YES 5.171 H-Termination proof of /home/matraf/haskell/eval_FullyBlown_Fast/empty.hs
H-Termination of the given Haskell-Program with start terms could successfully be proven:



HASKELL
  ↳ CR

mainModule Main
  (((>) :: Ord a => a  ->  a  ->  Bool) :: Ord a => a  ->  a  ->  Bool)

module Main where
  import qualified Prelude



Case Reductions:
The following Case expression
case compare x y of
 EQ → o
 LT → LT
 GT → GT

is transformed to
primCompAux0 o EQ = o
primCompAux0 o LT = LT
primCompAux0 o GT = GT



↳ HASKELL
  ↳ CR
HASKELL
      ↳ IFR

mainModule Main
  (((>) :: Ord a => a  ->  a  ->  Bool) :: Ord a => a  ->  a  ->  Bool)

module Main where
  import qualified Prelude



If Reductions:
The following If expression
if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero

is transformed to
primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y))
primDivNatS0 x y False = Zero

The following If expression
if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x

is transformed to
primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y)
primModNatS0 x y False = Succ x



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
HASKELL
          ↳ BR

mainModule Main
  (((>) :: Ord a => a  ->  a  ->  Bool) :: Ord a => a  ->  a  ->  Bool)

module Main where
  import qualified Prelude



Replaced joker patterns by fresh variables and removed binding patterns.

↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
HASKELL
              ↳ COR

mainModule Main
  (((>) :: Ord a => a  ->  a  ->  Bool) :: Ord a => a  ->  a  ->  Bool)

module Main where
  import qualified Prelude



Cond Reductions:
The following Function with conditions
compare x y
 | x == y
 = EQ
 | x <= y
 = LT
 | otherwise
 = GT

is transformed to
compare x y = compare3 x y

compare1 x y True = LT
compare1 x y False = compare0 x y otherwise

compare0 x y True = GT

compare2 x y True = EQ
compare2 x y False = compare1 x y (x <= y)

compare3 x y = compare2 x y (x == y)

The following Function with conditions
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd' x zx = gcd'2 x zx
gcd' x y = gcd'0 x y

gcd'0 x y = gcd' y (x `rem` y)

gcd'1 True x zx = x
gcd'1 zy zz vuu = gcd'0 zz vuu

gcd'2 x zx = gcd'1 (zx == 0) x zx
gcd'2 vuv vuw = gcd'0 vuv vuw

The following Function with conditions
gcd 0 0 = error []
gcd x y = 
gcd' (abs x) (abs y)
where 
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd vux vuy = gcd3 vux vuy
gcd x y = gcd0 x y

gcd0 x y = 
gcd' (abs x) (abs y)
where 
gcd' x zx = gcd'2 x zx
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x zx = x
gcd'1 zy zz vuu = gcd'0 zz vuu
gcd'2 x zx = gcd'1 (zx == 0) x zx
gcd'2 vuv vuw = gcd'0 vuv vuw

gcd1 True vux vuy = error []
gcd1 vuz vvu vvv = gcd0 vvu vvv

gcd2 True vux vuy = gcd1 (vuy == 0) vux vuy
gcd2 vvw vvx vvy = gcd0 vvx vvy

gcd3 vux vuy = gcd2 (vux == 0) vux vuy
gcd3 vvz vwu = gcd0 vvz vwu

The following Function with conditions
absReal x
 | x >= 0
 = x
 | otherwise
 = `negate` x

is transformed to
absReal x = absReal2 x

absReal1 x True = x
absReal1 x False = absReal0 x otherwise

absReal0 x True = `negate` x

absReal2 x = absReal1 x (x >= 0)

The following Function with conditions
undefined 
 | False
 = undefined

is transformed to
undefined  = undefined1

undefined0 True = undefined

undefined1  = undefined0 False

The following Function with conditions
reduce x y
 | y == 0
 = error []
 | otherwise
 = x `quot` d :% (y `quot` d)
where 
d  = gcd x y

is transformed to
reduce x y = reduce2 x y

reduce2 x y = 
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
HASKELL
                  ↳ LetRed

mainModule Main
  (((>) :: Ord a => a  ->  a  ->  Bool) :: Ord a => a  ->  a  ->  Bool)

module Main where
  import qualified Prelude



Let/Where Reductions:
The bindings of the following Let/Where expression
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise

are unpacked to the following functions on top level
reduce2D vwv vww = gcd vwv vww

reduce2Reduce1 vwv vww x y True = error []
reduce2Reduce1 vwv vww x y False = reduce2Reduce0 vwv vww x y otherwise

reduce2Reduce0 vwv vww x y True = x `quot` reduce2D vwv vww :% (y `quot` reduce2D vwv vww)

The bindings of the following Let/Where expression
gcd' (abs x) (abs y)
where 
gcd' x zx = gcd'2 x zx
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x zx = x
gcd'1 zy zz vuu = gcd'0 zz vuu
gcd'2 x zx = gcd'1 (zx == 0) x zx
gcd'2 vuv vuw = gcd'0 vuv vuw

are unpacked to the following functions on top level
gcd0Gcd'2 x zx = gcd0Gcd'1 (zx == 0) x zx
gcd0Gcd'2 vuv vuw = gcd0Gcd'0 vuv vuw

gcd0Gcd'1 True x zx = x
gcd0Gcd'1 zy zz vuu = gcd0Gcd'0 zz vuu

gcd0Gcd'0 x y = gcd0Gcd' y (x `rem` y)

gcd0Gcd' x zx = gcd0Gcd'2 x zx
gcd0Gcd' x y = gcd0Gcd'0 x y



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
HASKELL
                      ↳ NumRed

mainModule Main
  (((>) :: Ord a => a  ->  a  ->  Bool) :: Ord a => a  ->  a  ->  Bool)

module Main where
  import qualified Prelude



Num Reduction: All numbers are transformed to thier corresponding representation with Pos, Neg, Succ and Zero.

↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
                    ↳ HASKELL
                      ↳ NumRed
HASKELL
                          ↳ Narrow

mainModule Main
  ((>) :: Ord a => a  ->  a  ->  Bool)

module Main where
  import qualified Prelude



Haskell To QDPs


↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
                    ↳ HASKELL
                      ↳ NumRed
                        ↳ HASKELL
                          ↳ Narrow
                            ↳ AND
QDP
                                ↳ QDPSizeChangeProof
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primEqNat(Succ(vwx3000), Succ(vwx4000)) → new_primEqNat(vwx3000, vwx4000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
                    ↳ HASKELL
                      ↳ NumRed
                        ↳ HASKELL
                          ↳ Narrow
                            ↳ AND
                              ↳ QDP
QDP
                                ↳ QDPSizeChangeProof
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primPlusNat(Succ(vwx16200), Succ(vwx41000)) → new_primPlusNat(vwx16200, vwx41000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
                    ↳ HASKELL
                      ↳ NumRed
                        ↳ HASKELL
                          ↳ Narrow
                            ↳ AND
                              ↳ QDP
                              ↳ QDP
QDP
                                ↳ QDPSizeChangeProof
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primMulNat(Succ(vwx3100), Succ(vwx4100)) → new_primMulNat(vwx3100, Succ(vwx4100))

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
                    ↳ HASKELL
                      ↳ NumRed
                        ↳ HASKELL
                          ↳ Narrow
                            ↳ AND
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
QDP
                                ↳ QDPSizeChangeProof
                              ↳ QDP
                              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primCmpNat(Succ(vwx300), Succ(vwx400)) → new_primCmpNat(vwx300, vwx400)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
                    ↳ HASKELL
                      ↳ NumRed
                        ↳ HASKELL
                          ↳ Narrow
                            ↳ AND
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
QDP
                                ↳ QDPSizeChangeProof
                              ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_esEs2(Just(vwx300), Just(vwx400), app(app(app(ty_@3, bbb), bbc), bbd)) → new_esEs1(vwx300, vwx400, bbb, bbc, bbd)
new_esEs3(Right(vwx300), Right(vwx400), bdb, app(ty_[], bdc)) → new_esEs(vwx300, vwx400, bdc)
new_esEs(:(vwx300, vwx301), :(vwx400, vwx401), app(app(ty_@2, bb), bc)) → new_esEs0(vwx300, vwx400, bb, bc)
new_esEs2(Just(vwx300), Just(vwx400), app(ty_[], bag)) → new_esEs(vwx300, vwx400, bag)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, app(app(app(ty_@3, gh), ha), hb), fb) → new_esEs1(vwx301, vwx401, gh, ha, hb)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), app(app(ty_Either, dd), de), cd) → new_esEs3(vwx300, vwx400, dd, de)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, app(app(ty_Either, hd), he), fb) → new_esEs3(vwx301, vwx401, hd, he)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, fa, app(app(ty_Either, bae), baf)) → new_esEs3(vwx302, vwx402, bae, baf)
new_esEs3(Right(vwx300), Right(vwx400), bdb, app(app(ty_Either, beb), bec)) → new_esEs3(vwx300, vwx400, beb, bec)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), df, app(app(app(ty_@3, eb), ec), ed)) → new_esEs1(vwx301, vwx401, eb, ec, ed)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, fa, app(app(app(ty_@3, baa), bab), bac)) → new_esEs1(vwx302, vwx402, baa, bab, bac)
new_esEs3(Right(vwx300), Right(vwx400), bdb, app(app(app(ty_@3, bdf), bdg), bdh)) → new_esEs1(vwx300, vwx400, bdf, bdg, bdh)
new_esEs3(Left(vwx300), Left(vwx400), app(app(app(ty_@3, bcd), bce), bcf), bca) → new_esEs1(vwx300, vwx400, bcd, bce, bcf)
new_esEs3(Left(vwx300), Left(vwx400), app(ty_[], bbh), bca) → new_esEs(vwx300, vwx400, bbh)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, fa, app(app(ty_@2, hg), hh)) → new_esEs0(vwx302, vwx402, hg, hh)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), df, app(app(ty_Either, ef), eg)) → new_esEs3(vwx301, vwx401, ef, eg)
new_esEs2(Just(vwx300), Just(vwx400), app(ty_Maybe, bbe)) → new_esEs2(vwx300, vwx400, bbe)
new_esEs3(Left(vwx300), Left(vwx400), app(app(ty_Either, bch), bda), bca) → new_esEs3(vwx300, vwx400, bch, bda)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), app(app(ty_@2, fc), fd), fa, fb) → new_esEs0(vwx300, vwx400, fc, fd)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), df, app(ty_[], dg)) → new_esEs(vwx301, vwx401, dg)
new_esEs(:(vwx300, vwx301), :(vwx400, vwx401), app(ty_Maybe, bg)) → new_esEs2(vwx300, vwx400, bg)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), app(app(app(ty_@3, ff), fg), fh), fa, fb) → new_esEs1(vwx300, vwx400, ff, fg, fh)
new_esEs3(Left(vwx300), Left(vwx400), app(ty_Maybe, bcg), bca) → new_esEs2(vwx300, vwx400, bcg)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), df, app(ty_Maybe, ee)) → new_esEs2(vwx301, vwx401, ee)
new_esEs(:(vwx300, vwx301), :(vwx400, vwx401), cb) → new_esEs(vwx301, vwx401, cb)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, app(ty_Maybe, hc), fb) → new_esEs2(vwx301, vwx401, hc)
new_esEs(:(vwx300, vwx301), :(vwx400, vwx401), app(app(app(ty_@3, bd), be), bf)) → new_esEs1(vwx300, vwx400, bd, be, bf)
new_esEs(:(vwx300, vwx301), :(vwx400, vwx401), app(app(ty_Either, bh), ca)) → new_esEs3(vwx300, vwx400, bh, ca)
new_esEs3(Left(vwx300), Left(vwx400), app(app(ty_@2, bcb), bcc), bca) → new_esEs0(vwx300, vwx400, bcb, bcc)
new_esEs3(Right(vwx300), Right(vwx400), bdb, app(app(ty_@2, bdd), bde)) → new_esEs0(vwx300, vwx400, bdd, bde)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), app(ty_Maybe, dc), cd) → new_esEs2(vwx300, vwx400, dc)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), app(ty_[], eh), fa, fb) → new_esEs(vwx300, vwx400, eh)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, fa, app(ty_Maybe, bad)) → new_esEs2(vwx302, vwx402, bad)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), app(app(ty_@2, ce), cf), cd) → new_esEs0(vwx300, vwx400, ce, cf)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), app(ty_Maybe, ga), fa, fb) → new_esEs2(vwx300, vwx400, ga)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), app(ty_[], cc), cd) → new_esEs(vwx300, vwx400, cc)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), app(app(ty_Either, gb), gc), fa, fb) → new_esEs3(vwx300, vwx400, gb, gc)
new_esEs3(Right(vwx300), Right(vwx400), bdb, app(ty_Maybe, bea)) → new_esEs2(vwx300, vwx400, bea)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), app(app(app(ty_@3, cg), da), db), cd) → new_esEs1(vwx300, vwx400, cg, da, db)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, app(app(ty_@2, gf), gg), fb) → new_esEs0(vwx301, vwx401, gf, gg)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, fa, app(ty_[], hf)) → new_esEs(vwx302, vwx402, hf)
new_esEs2(Just(vwx300), Just(vwx400), app(app(ty_Either, bbf), bbg)) → new_esEs3(vwx300, vwx400, bbf, bbg)
new_esEs0(@2(vwx300, vwx301), @2(vwx400, vwx401), df, app(app(ty_@2, dh), ea)) → new_esEs0(vwx301, vwx401, dh, ea)
new_esEs1(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), gd, app(ty_[], ge), fb) → new_esEs(vwx301, vwx401, ge)
new_esEs(:(vwx300, vwx301), :(vwx400, vwx401), app(ty_[], ba)) → new_esEs(vwx300, vwx400, ba)
new_esEs2(Just(vwx300), Just(vwx400), app(app(ty_@2, bah), bba)) → new_esEs0(vwx300, vwx400, bah, bba)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ CR
    ↳ HASKELL
      ↳ IFR
        ↳ HASKELL
          ↳ BR
            ↳ HASKELL
              ↳ COR
                ↳ HASKELL
                  ↳ LetRed
                    ↳ HASKELL
                      ↳ NumRed
                        ↳ HASKELL
                          ↳ Narrow
                            ↳ AND
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
                              ↳ QDP
QDP
                                ↳ QDPSizeChangeProof

Q DP problem:
The TRS P consists of the following rules:

new_compare23(vwx58, vwx59, False, app(app(app(ty_@3, cfb), cfc), cfd)) → new_ltEs(vwx58, vwx59, cfb, cfc, cfd)
new_compare21(Left(vwx440), Left(vwx450), False, app(app(ty_Either, app(app(app(ty_@3, cab), cac), cad)), cae), caa) → new_ltEs(vwx440, vwx450, cab, cac, cad)
new_compare(@3(vwx30, vwx31, vwx32), @3(vwx40, vwx41, vwx42), eh, fa, fb) → new_compare2(vwx30, vwx31, vwx32, vwx40, vwx41, vwx42, new_asAs(new_esEs4(vwx30, vwx40, eh), new_asAs(new_esEs5(vwx31, vwx41, fa), new_esEs6(vwx32, vwx42, fb))), eh, fa, fb)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, bd, app(app(ty_@2, da), db)) → new_ltEs0(vwx71, vwx74, da, db)
new_lt0(vwx69, vwx72, bf, bg) → new_compare0(vwx69, vwx72, bf, bg)
new_compare22(vwx51, vwx52, False, cdg, app(app(ty_Either, cef), ceg)) → new_ltEs2(vwx51, vwx52, cef, ceg)
new_compare3(Right(vwx30), Right(vwx40), bhg, bhh) → new_compare22(vwx30, vwx40, new_esEs10(vwx30, vwx40, bhh), bhg, bhh)
new_ltEs2(Left(vwx440), Left(vwx450), app(app(ty_Either, cba), cbb), cae) → new_ltEs2(vwx440, vwx450, cba, cbb)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, bdh), app(app(ty_@2, bed), bee)), caa) → new_ltEs0(vwx441, vwx451, bed, bee)
new_compare21(Right(vwx440), Right(vwx450), False, app(app(ty_Either, cbd), app(ty_[], ccb)), caa) → new_ltEs1(vwx440, vwx450, ccb)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, app(app(ty_Either, bcd), bce), bbh) → new_lt2(vwx441, vwx451, bcd, bce)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), bdh, app(app(app(ty_@3, bea), beb), bec)) → new_ltEs(vwx441, vwx451, bea, beb, bec)
new_ltEs2(Left(vwx440), Left(vwx450), app(app(ty_@2, caf), cag), cae) → new_ltEs0(vwx440, vwx450, caf, cag)
new_compare21(Left(vwx440), Left(vwx450), False, app(app(ty_Either, app(ty_Maybe, cbc)), cae), caa) → new_ltEs3(vwx440, vwx450, cbc)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, app(ty_[], bdd)), bac), bbh), caa) → new_lt1(vwx440, vwx450, bdd)
new_compare22(vwx51, vwx52, False, cdg, app(ty_[], cee)) → new_ltEs1(vwx51, vwx52, cee)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), bac), app(app(ty_@2, bag), bah)), caa) → new_ltEs0(vwx442, vwx452, bag, bah)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), bac), app(ty_Maybe, bbd)), caa) → new_ltEs3(vwx442, vwx452, bbd)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, app(ty_Maybe, bgc)), bfe), caa) → new_lt3(vwx440, vwx450, bgc)
new_lt1(vwx69, vwx72, bh) → new_compare1(vwx69, vwx72, bh)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, app(app(app(ty_@3, ba), bb), bc), bd, be) → new_compare(vwx69, vwx72, ba, bb, bc)
new_compare0(@2(vwx30, vwx31), @2(vwx40, vwx41), fc, fd) → new_compare20(vwx30, vwx31, vwx40, vwx41, new_asAs(new_esEs7(vwx30, vwx40, fc), new_esEs8(vwx31, vwx41, fd)), fc, fd)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, bac, app(app(ty_Either, bbb), bbc)) → new_ltEs2(vwx442, vwx452, bbb, bbc)
new_ltEs1(vwx44, vwx45, bgd) → new_compare1(vwx44, vwx45, bgd)
new_primCompAux(vwx30, vwx40, vwx8, app(app(app(ty_@3, bgf), bgg), bgh)) → new_compare(vwx30, vwx40, bgf, bgg, bgh)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), bac), app(app(ty_Either, bbb), bbc)), caa) → new_ltEs2(vwx442, vwx452, bbb, bbc)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), app(ty_[], bcc)), bbh), caa) → new_lt1(vwx441, vwx451, bcc)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, app(app(ty_Either, hg), hh), hc) → new_lt2(vwx82, vwx84, hg, hh)
new_ltEs2(Left(vwx440), Left(vwx450), app(app(app(ty_@3, cab), cac), cad), cae) → new_ltEs(vwx440, vwx450, cab, cac, cad)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, app(app(ty_@2, hd), he), hc) → new_lt0(vwx82, vwx84, hd, he)
new_ltEs3(Just(vwx440), Just(vwx450), app(app(app(ty_@3, ccf), ccg), cch)) → new_ltEs(vwx440, vwx450, ccf, ccg, cch)
new_compare1(:(vwx30, vwx31), :(vwx40, vwx41), bge) → new_compare1(vwx31, vwx41, bge)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), app(app(ty_Either, bcd), bce)), bbh), caa) → new_lt2(vwx441, vwx451, bcd, bce)
new_lt2(vwx69, vwx72, ca, cb) → new_compare3(vwx69, vwx72, ca, cb)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, bdh), app(app(app(ty_@3, bea), beb), bec)), caa) → new_ltEs(vwx441, vwx451, bea, beb, bec)
new_compare21(Right(vwx440), Right(vwx450), False, app(app(ty_Either, cbd), app(app(ty_Either, ccc), ccd)), caa) → new_ltEs2(vwx440, vwx450, ccc, ccd)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), app(app(ty_@2, bdb), bdc), bac, bbh) → new_lt0(vwx440, vwx450, bdb, bdc)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, app(ty_Maybe, eg), be) → new_lt3(vwx70, vwx73, eg)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, app(app(app(ty_@3, bbe), bbf), bbg), bbh) → new_lt(vwx441, vwx451, bbe, bbf, bbg)
new_compare21(Just(vwx440), Just(vwx450), False, app(ty_Maybe, app(app(ty_Either, cdd), cde)), caa) → new_ltEs2(vwx440, vwx450, cdd, cde)
new_compare23(vwx58, vwx59, False, app(app(ty_@2, cfe), cff)) → new_ltEs0(vwx58, vwx59, cfe, cff)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, bd, app(ty_Maybe, df)) → new_ltEs3(vwx71, vwx74, df)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, bac, app(ty_Maybe, bbd)) → new_ltEs3(vwx442, vwx452, bbd)
new_ltEs3(Just(vwx440), Just(vwx450), app(app(ty_@2, cda), cdb)) → new_ltEs0(vwx440, vwx450, cda, cdb)
new_primCompAux(vwx30, vwx40, vwx8, app(app(ty_Either, bhd), bhe)) → new_compare3(vwx30, vwx40, bhd, bhe)
new_compare21(Left(vwx440), Left(vwx450), False, app(app(ty_Either, app(app(ty_@2, caf), cag)), cae), caa) → new_ltEs0(vwx440, vwx450, caf, cag)
new_primCompAux(vwx30, vwx40, vwx8, app(ty_[], bhc)) → new_compare1(vwx30, vwx40, bhc)
new_compare21(Right(vwx440), Right(vwx450), False, app(app(ty_Either, cbd), app(ty_Maybe, cce)), caa) → new_ltEs3(vwx440, vwx450, cce)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, ff, app(app(ty_@2, gb), gc)) → new_ltEs0(vwx83, vwx85, gb, gc)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), app(app(app(ty_@3, bfb), bfc), bfd), bfe) → new_lt(vwx440, vwx450, bfb, bfc, bfd)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, app(app(ty_Either, ca), cb), bd, be) → new_compare3(vwx69, vwx72, ca, cb)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, app(app(ty_@2, bff), bfg)), bfe), caa) → new_lt0(vwx440, vwx450, bff, bfg)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, app(ty_[], bcc), bbh) → new_lt1(vwx441, vwx451, bcc)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, bac, app(app(app(ty_@3, bad), bae), baf)) → new_ltEs(vwx442, vwx452, bad, bae, baf)
new_compare21(Just(vwx440), Just(vwx450), False, app(ty_Maybe, app(ty_Maybe, cdf)), caa) → new_ltEs3(vwx440, vwx450, cdf)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), app(app(ty_Either, bga), bgb), bfe) → new_lt2(vwx440, vwx450, bga, bgb)
new_ltEs3(Just(vwx440), Just(vwx450), app(ty_Maybe, cdf)) → new_ltEs3(vwx440, vwx450, cdf)
new_compare23(vwx58, vwx59, False, app(ty_[], cfg)) → new_ltEs1(vwx58, vwx59, cfg)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, app(ty_[], ed), be) → new_lt1(vwx70, vwx73, ed)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, bac, app(app(ty_@2, bag), bah)) → new_ltEs0(vwx442, vwx452, bag, bah)
new_compare21(vwx44, vwx45, False, app(ty_[], bgd), caa) → new_compare1(vwx44, vwx45, bgd)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, bac, app(ty_[], bba)) → new_ltEs1(vwx442, vwx452, bba)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, app(app(ty_Either, bde), bdf)), bac), bbh), caa) → new_lt2(vwx440, vwx450, bde, bdf)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), app(app(ty_@2, bff), bfg), bfe) → new_lt0(vwx440, vwx450, bff, bfg)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), app(ty_Maybe, bcf)), bbh), caa) → new_lt3(vwx441, vwx451, bcf)
new_compare21(Left(vwx440), Left(vwx450), False, app(app(ty_Either, app(app(ty_Either, cba), cbb)), cae), caa) → new_ltEs2(vwx440, vwx450, cba, cbb)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, bdh), app(ty_Maybe, bfa)), caa) → new_ltEs3(vwx441, vwx451, bfa)
new_compare21(Just(vwx440), Just(vwx450), False, app(ty_Maybe, app(app(app(ty_@3, ccf), ccg), cch)), caa) → new_ltEs(vwx440, vwx450, ccf, ccg, cch)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, app(app(app(ty_@3, gh), ha), hb), hc) → new_lt(vwx82, vwx84, gh, ha, hb)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, app(app(ty_@2, bca), bcb), bbh) → new_lt0(vwx441, vwx451, bca, bcb)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, bd, app(ty_[], dc)) → new_ltEs1(vwx71, vwx74, dc)
new_compare4(Just(vwx30), Just(vwx40), cfa) → new_compare23(vwx30, vwx40, new_esEs11(vwx30, vwx40, cfa), cfa)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), app(ty_Maybe, bgc), bfe) → new_lt3(vwx440, vwx450, bgc)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, ff, app(ty_Maybe, gg)) → new_ltEs3(vwx83, vwx85, gg)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, app(app(ty_@2, eb), ec), be) → new_lt0(vwx70, vwx73, eb, ec)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, app(app(ty_@2, bf), bg), bd, be) → new_compare0(vwx69, vwx72, bf, bg)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, app(app(app(ty_@3, bfb), bfc), bfd)), bfe), caa) → new_lt(vwx440, vwx450, bfb, bfc, bfd)
new_compare22(vwx51, vwx52, False, cdg, app(app(app(ty_@3, cdh), cea), ceb)) → new_ltEs(vwx51, vwx52, cdh, cea, ceb)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), app(ty_[], bdd), bac, bbh) → new_lt1(vwx440, vwx450, bdd)
new_primCompAux(vwx30, vwx40, vwx8, app(app(ty_@2, bha), bhb)) → new_compare0(vwx30, vwx40, bha, bhb)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, ff, app(app(app(ty_@3, fg), fh), ga)) → new_ltEs(vwx83, vwx85, fg, fh, ga)
new_ltEs2(Left(vwx440), Left(vwx450), app(ty_Maybe, cbc), cae) → new_ltEs3(vwx440, vwx450, cbc)
new_compare23(vwx58, vwx59, False, app(app(ty_Either, cfh), cga)) → new_ltEs2(vwx58, vwx59, cfh, cga)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, bdh), app(app(ty_Either, beg), beh)), caa) → new_ltEs2(vwx441, vwx451, beg, beh)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, ff, app(app(ty_Either, ge), gf)) → new_ltEs2(vwx83, vwx85, ge, gf)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, app(ty_[], hf), hc) → new_lt1(vwx82, vwx84, hf)
new_ltEs3(Just(vwx440), Just(vwx450), app(app(ty_Either, cdd), cde)) → new_ltEs2(vwx440, vwx450, cdd, cde)
new_compare1(:(vwx30, vwx31), :(vwx40, vwx41), bge) → new_primCompAux(vwx30, vwx40, new_compare5(vwx31, vwx41, bge), bge)
new_compare21(Just(vwx440), Just(vwx450), False, app(ty_Maybe, app(app(ty_@2, cda), cdb)), caa) → new_ltEs0(vwx440, vwx450, cda, cdb)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, bd, app(app(ty_Either, dd), de)) → new_ltEs2(vwx71, vwx74, dd, de)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, app(ty_[], bh), bd, be) → new_compare1(vwx69, vwx72, bh)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, app(app(ty_Either, bga), bgb)), bfe), caa) → new_lt2(vwx440, vwx450, bga, bgb)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, app(ty_Maybe, baa), hc) → new_lt3(vwx82, vwx84, baa)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), app(app(ty_@2, bca), bcb)), bbh), caa) → new_lt0(vwx441, vwx451, bca, bcb)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, app(app(ty_@2, bdb), bdc)), bac), bbh), caa) → new_lt0(vwx440, vwx450, bdb, bdc)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, app(app(app(ty_@3, dg), dh), ea), be) → new_lt(vwx70, vwx73, dg, dh, ea)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, app(ty_Maybe, bdg)), bac), bbh), caa) → new_lt3(vwx440, vwx450, bdg)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), bac), app(ty_[], bba)), caa) → new_ltEs1(vwx442, vwx452, bba)
new_ltEs2(Right(vwx440), Right(vwx450), cbd, app(app(app(ty_@3, cbe), cbf), cbg)) → new_ltEs(vwx440, vwx450, cbe, cbf, cbg)
new_ltEs2(Right(vwx440), Right(vwx450), cbd, app(ty_[], ccb)) → new_ltEs1(vwx440, vwx450, ccb)
new_compare23(vwx58, vwx59, False, app(ty_Maybe, cgb)) → new_ltEs3(vwx58, vwx59, cgb)
new_ltEs2(Right(vwx440), Right(vwx450), cbd, app(app(ty_Either, ccc), ccd)) → new_ltEs2(vwx440, vwx450, ccc, ccd)
new_compare21(Right(vwx440), Right(vwx450), False, app(app(ty_Either, cbd), app(app(app(ty_@3, cbe), cbf), cbg)), caa) → new_ltEs(vwx440, vwx450, cbe, cbf, cbg)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, app(app(ty_Either, ee), ef), be) → new_lt2(vwx70, vwx73, ee, ef)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), bdh, app(app(ty_@2, bed), bee)) → new_ltEs0(vwx441, vwx451, bed, bee)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), bdh, app(ty_[], bef)) → new_ltEs1(vwx441, vwx451, bef)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, bdh), app(ty_[], bef)), caa) → new_ltEs1(vwx441, vwx451, bef)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, app(app(app(ty_@3, bcg), bch), bda)), bac), bbh), caa) → new_lt(vwx440, vwx450, bcg, bch, bda)
new_lt3(vwx69, vwx72, cc) → new_compare4(vwx69, vwx72, cc)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), app(app(app(ty_@3, bcg), bch), bda), bac, bbh) → new_lt(vwx440, vwx450, bcg, bch, bda)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), app(app(ty_Either, bde), bdf), bac, bbh) → new_lt2(vwx440, vwx450, bde, bdf)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, app(ty_Maybe, cc), bd, be) → new_compare4(vwx69, vwx72, cc)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), bdh, app(ty_Maybe, bfa)) → new_ltEs3(vwx441, vwx451, bfa)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), app(ty_[], bfh), bfe) → new_lt1(vwx440, vwx450, bfh)
new_ltEs0(@2(vwx440, vwx441), @2(vwx450, vwx451), bdh, app(app(ty_Either, beg), beh)) → new_ltEs2(vwx441, vwx451, beg, beh)
new_compare22(vwx51, vwx52, False, cdg, app(app(ty_@2, cec), ced)) → new_ltEs0(vwx51, vwx52, cec, ced)
new_compare21(@2(vwx440, vwx441), @2(vwx450, vwx451), False, app(app(ty_@2, app(ty_[], bfh)), bfe), caa) → new_lt1(vwx440, vwx450, bfh)
new_ltEs2(Right(vwx440), Right(vwx450), cbd, app(app(ty_@2, cbh), cca)) → new_ltEs0(vwx440, vwx450, cbh, cca)
new_compare21(Left(vwx440), Left(vwx450), False, app(app(ty_Either, app(ty_[], cah)), cae), caa) → new_ltEs1(vwx440, vwx450, cah)
new_primCompAux(vwx30, vwx40, vwx8, app(ty_Maybe, bhf)) → new_compare4(vwx30, vwx40, bhf)
new_ltEs2(Right(vwx440), Right(vwx450), cbd, app(ty_Maybe, cce)) → new_ltEs3(vwx440, vwx450, cce)
new_compare3(Left(vwx30), Left(vwx40), bhg, bhh) → new_compare21(vwx30, vwx40, new_esEs9(vwx30, vwx40, bhg), bhg, bhh)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), bac), app(app(app(ty_@3, bad), bae), baf)), caa) → new_ltEs(vwx442, vwx452, bad, bae, baf)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, app(ty_Maybe, bcf), bbh) → new_lt3(vwx441, vwx451, bcf)
new_lt(vwx69, vwx72, ba, bb, bc) → new_compare(vwx69, vwx72, ba, bb, bc)
new_ltEs(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), app(ty_Maybe, bdg), bac, bbh) → new_lt3(vwx440, vwx450, bdg)
new_compare21(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), False, app(app(app(ty_@3, bab), app(app(app(ty_@3, bbe), bbf), bbg)), bbh), caa) → new_lt(vwx441, vwx451, bbe, bbf, bbg)
new_compare2(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, bd, app(app(app(ty_@3, ce), cf), cg)) → new_ltEs(vwx71, vwx74, ce, cf, cg)
new_compare21(Just(vwx440), Just(vwx450), False, app(ty_Maybe, app(ty_[], cdc)), caa) → new_ltEs1(vwx440, vwx450, cdc)
new_compare22(vwx51, vwx52, False, cdg, app(ty_Maybe, ceh)) → new_ltEs3(vwx51, vwx52, ceh)
new_ltEs2(Left(vwx440), Left(vwx450), app(ty_[], cah), cae) → new_ltEs1(vwx440, vwx450, cah)
new_ltEs3(Just(vwx440), Just(vwx450), app(ty_[], cdc)) → new_ltEs1(vwx440, vwx450, cdc)
new_compare21(Right(vwx440), Right(vwx450), False, app(app(ty_Either, cbd), app(app(ty_@2, cbh), cca)), caa) → new_ltEs0(vwx440, vwx450, cbh, cca)
new_compare20(vwx82, vwx83, vwx84, vwx85, False, ff, app(ty_[], gd)) → new_ltEs1(vwx83, vwx85, gd)

The TRS R consists of the following rules:

new_compare7(vwx30, vwx40, ty_@0) → new_compare29(vwx30, vwx40)
new_esEs38(vwx301, vwx401, app(ty_[], feh)) → new_esEs14(vwx301, vwx401, feh)
new_esEs35(vwx440, vwx450, ty_Integer) → new_esEs15(vwx440, vwx450)
new_esEs32(vwx82, vwx84, ty_Char) → new_esEs16(vwx82, vwx84)
new_compare112(vwx122, vwx123, True, eeb) → LT
new_compare10(vwx134, vwx135, vwx136, vwx137, vwx138, vwx139, False, vwx141, cgc, cgd, cge) → new_compare11(vwx134, vwx135, vwx136, vwx137, vwx138, vwx139, vwx141, cgc, cgd, cge)
new_lt22(vwx440, vwx450, ty_Int) → new_lt18(vwx440, vwx450)
new_lt21(vwx441, vwx451, app(ty_Maybe, bcf)) → new_lt8(vwx441, vwx451, bcf)
new_compare7(vwx30, vwx40, app(ty_[], bhc)) → new_compare5(vwx30, vwx40, bhc)
new_ltEs21(vwx83, vwx85, app(ty_[], gd)) → new_ltEs12(vwx83, vwx85, gd)
new_compare15(Double(vwx30, vwx31), Double(vwx40, vwx41)) → new_compare26(new_sr(vwx30, vwx40), new_sr(vwx31, vwx41))
new_ltEs17(LT, LT) → True
new_esEs8(vwx31, vwx41, ty_Char) → new_esEs16(vwx31, vwx41)
new_compare28(EQ, GT) → LT
new_esEs36(vwx300, vwx400, app(ty_Ratio, fch)) → new_esEs20(vwx300, vwx400, fch)
new_ltEs20(vwx71, vwx74, app(ty_Ratio, ddg)) → new_ltEs9(vwx71, vwx74, ddg)
new_esEs5(vwx31, vwx41, ty_Int) → new_esEs13(vwx31, vwx41)
new_compare211(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, False, cd, bd, be) → new_compare10(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, new_lt9(vwx69, vwx72, cd), new_asAs(new_esEs28(vwx69, vwx72, cd), new_pePe(new_lt10(vwx70, vwx73, bd), new_asAs(new_esEs29(vwx70, vwx73, bd), new_ltEs20(vwx71, vwx74, be)))), cd, bd, be)
new_compare26(vwx3, vwx4) → new_primCmpInt(vwx3, vwx4)
new_compare27(Nothing, Nothing, cfa) → EQ
new_esEs25(Left(vwx300), Left(vwx400), ty_Ordering, ebc) → new_esEs12(vwx300, vwx400)
new_esEs9(vwx30, vwx40, ty_Integer) → new_esEs15(vwx30, vwx40)
new_esEs33(vwx440, vwx450, app(app(ty_@2, bdb), bdc)) → new_esEs17(vwx440, vwx450, bdb, bdc)
new_esEs5(vwx31, vwx41, app(ty_[], dcb)) → new_esEs14(vwx31, vwx41, dcb)
new_lt15(vwx69, vwx72) → new_esEs12(new_compare17(vwx69, vwx72), LT)
new_esEs28(vwx69, vwx72, ty_Char) → new_esEs16(vwx69, vwx72)
new_ltEs24(vwx441, vwx451, app(ty_Ratio, ehc)) → new_ltEs9(vwx441, vwx451, ehc)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_@0) → new_ltEs18(vwx440, vwx450)
new_esEs32(vwx82, vwx84, app(app(ty_Either, hg), hh)) → new_esEs25(vwx82, vwx84, hg, hh)
new_esEs31(vwx301, vwx401, app(ty_[], dfd)) → new_esEs14(vwx301, vwx401, dfd)
new_esEs34(vwx441, vwx451, app(ty_Ratio, eac)) → new_esEs20(vwx441, vwx451, eac)
new_esEs33(vwx440, vwx450, ty_Int) → new_esEs13(vwx440, vwx450)
new_esEs30(vwx300, vwx400, app(ty_[], deb)) → new_esEs14(vwx300, vwx400, deb)
new_esEs29(vwx70, vwx73, app(ty_Ratio, ddf)) → new_esEs20(vwx70, vwx73, ddf)
new_lt12(vwx69, vwx72) → new_esEs12(new_compare14(vwx69, vwx72), LT)
new_esEs7(vwx30, vwx40, ty_Integer) → new_esEs15(vwx30, vwx40)
new_ltEs22(vwx442, vwx452, app(ty_Ratio, ead)) → new_ltEs9(vwx442, vwx452, ead)
new_ltEs23(vwx58, vwx59, ty_Int) → new_ltEs15(vwx58, vwx59)
new_primMulNat0(Zero, Zero) → Zero
new_esEs19(@3(vwx300, vwx301, vwx302), @3(vwx400, vwx401, vwx402), eaf, eag, eah) → new_asAs(new_esEs37(vwx300, vwx400, eaf), new_asAs(new_esEs38(vwx301, vwx401, eag), new_esEs39(vwx302, vwx402, eah)))
new_esEs39(vwx302, vwx402, app(ty_Maybe, fha)) → new_esEs23(vwx302, vwx402, fha)
new_esEs11(vwx30, vwx40, ty_Float) → new_esEs24(vwx30, vwx40)
new_esEs6(vwx32, vwx42, app(app(ty_@2, ecg), ech)) → new_esEs17(vwx32, vwx42, ecg, ech)
new_esEs7(vwx30, vwx40, app(app(ty_Either, dad), dae)) → new_esEs25(vwx30, vwx40, dad, dae)
new_compare7(vwx30, vwx40, ty_Integer) → new_compare17(vwx30, vwx40)
new_ltEs24(vwx441, vwx451, app(ty_[], bef)) → new_ltEs12(vwx441, vwx451, bef)
new_esEs25(Right(vwx300), Right(vwx400), ebb, app(ty_Ratio, fbd)) → new_esEs20(vwx300, vwx400, fbd)
new_esEs8(vwx31, vwx41, app(ty_Ratio, dbd)) → new_esEs20(vwx31, vwx41, dbd)
new_lt8(vwx69, vwx72, cc) → new_esEs12(new_compare27(vwx69, vwx72, cc), LT)
new_esEs32(vwx82, vwx84, ty_Integer) → new_esEs15(vwx82, vwx84)
new_compare18(Left(vwx30), Right(vwx40), bhg, bhh) → LT
new_ltEs13(Right(vwx440), Right(vwx450), cbd, app(app(ty_@2, cbh), cca)) → new_ltEs11(vwx440, vwx450, cbh, cca)
new_ltEs19(vwx51, vwx52, app(app(ty_@2, cec), ced)) → new_ltEs11(vwx51, vwx52, cec, ced)
new_esEs10(vwx30, vwx40, app(ty_Maybe, efb)) → new_esEs23(vwx30, vwx40, efb)
new_esEs38(vwx301, vwx401, ty_Bool) → new_esEs22(vwx301, vwx401)
new_esEs11(vwx30, vwx40, ty_Bool) → new_esEs22(vwx30, vwx40)
new_ltEs23(vwx58, vwx59, app(ty_Ratio, eea)) → new_ltEs9(vwx58, vwx59, eea)
new_ltEs22(vwx442, vwx452, app(app(ty_Either, bbb), bbc)) → new_ltEs13(vwx442, vwx452, bbb, bbc)
new_lt20(vwx82, vwx84, ty_Int) → new_lt18(vwx82, vwx84)
new_esEs9(vwx30, vwx40, ty_Bool) → new_esEs22(vwx30, vwx40)
new_lt21(vwx441, vwx451, app(ty_Ratio, eac)) → new_lt14(vwx441, vwx451, eac)
new_esEs8(vwx31, vwx41, app(ty_[], daf)) → new_esEs14(vwx31, vwx41, daf)
new_ltEs20(vwx71, vwx74, ty_Char) → new_ltEs14(vwx71, vwx74)
new_ltEs16(Just(vwx440), Just(vwx450), app(ty_Ratio, egg)) → new_ltEs9(vwx440, vwx450, egg)
new_ltEs13(Left(vwx440), Left(vwx450), ty_Integer, cae) → new_ltEs10(vwx440, vwx450)
new_ltEs24(vwx441, vwx451, ty_Double) → new_ltEs8(vwx441, vwx451)
new_fsEs(vwx161) → new_not(new_esEs12(vwx161, GT))
new_ltEs7(True, True) → True
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_Double) → new_esEs18(vwx300, vwx400)
new_esEs25(Left(vwx300), Left(vwx400), ty_Float, ebc) → new_esEs24(vwx300, vwx400)
new_lt21(vwx441, vwx451, app(ty_[], bcc)) → new_lt16(vwx441, vwx451, bcc)
new_esEs32(vwx82, vwx84, ty_Float) → new_esEs24(vwx82, vwx84)
new_esEs28(vwx69, vwx72, app(app(ty_Either, ca), cb)) → new_esEs25(vwx69, vwx72, ca, cb)
new_esEs33(vwx440, vwx450, ty_Integer) → new_esEs15(vwx440, vwx450)
new_compare7(vwx30, vwx40, ty_Bool) → new_compare14(vwx30, vwx40)
new_esEs34(vwx441, vwx451, ty_Ordering) → new_esEs12(vwx441, vwx451)
new_esEs12(LT, GT) → False
new_esEs12(GT, LT) → False
new_esEs37(vwx300, vwx400, ty_Ordering) → new_esEs12(vwx300, vwx400)
new_ltEs23(vwx58, vwx59, ty_Ordering) → new_ltEs17(vwx58, vwx59)
new_esEs24(Float(vwx300, vwx301), Float(vwx400, vwx401)) → new_esEs13(new_sr(vwx300, vwx400), new_sr(vwx301, vwx401))
new_esEs29(vwx70, vwx73, ty_Float) → new_esEs24(vwx70, vwx73)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, app(ty_Maybe, cce)) → new_ltEs16(vwx440, vwx450, cce)
new_esEs31(vwx301, vwx401, app(ty_Maybe, dgc)) → new_esEs23(vwx301, vwx401, dgc)
new_ltEs22(vwx442, vwx452, app(app(app(ty_@3, bad), bae), baf)) → new_ltEs5(vwx442, vwx452, bad, bae, baf)
new_esEs23(Just(vwx300), Just(vwx400), ty_Double) → new_esEs18(vwx300, vwx400)
new_lt9(vwx69, vwx72, app(app(app(ty_@3, ba), bb), bc)) → new_lt6(vwx69, vwx72, ba, bb, bc)
new_esEs35(vwx440, vwx450, app(app(ty_@2, bff), bfg)) → new_esEs17(vwx440, vwx450, bff, bfg)
new_esEs8(vwx31, vwx41, app(app(ty_Either, dbf), dbg)) → new_esEs25(vwx31, vwx41, dbf, dbg)
new_esEs17(@2(vwx300, vwx301), @2(vwx400, vwx401), ddh, dea) → new_asAs(new_esEs30(vwx300, vwx400, ddh), new_esEs31(vwx301, vwx401, dea))
new_esEs15(Integer(vwx300), Integer(vwx400)) → new_primEqInt(vwx300, vwx400)
new_compare110(vwx149, vwx150, vwx151, vwx152, True, vwx154, dbh, dca) → new_compare111(vwx149, vwx150, vwx151, vwx152, True, dbh, dca)
new_esEs5(vwx31, vwx41, ty_Bool) → new_esEs22(vwx31, vwx41)
new_lt9(vwx69, vwx72, ty_Char) → new_lt17(vwx69, vwx72)
new_esEs4(vwx30, vwx40, app(app(app(ty_@3, eaf), eag), eah)) → new_esEs19(vwx30, vwx40, eaf, eag, eah)
new_lt10(vwx70, vwx73, app(app(ty_@2, eb), ec)) → new_lt4(vwx70, vwx73, eb, ec)
new_lt23(vwx440, vwx450, app(ty_Ratio, ehb)) → new_lt14(vwx440, vwx450, ehb)
new_esEs29(vwx70, vwx73, app(ty_Maybe, eg)) → new_esEs23(vwx70, vwx73, eg)
new_esEs4(vwx30, vwx40, ty_Double) → new_esEs18(vwx30, vwx40)
new_esEs11(vwx30, vwx40, app(ty_Ratio, egc)) → new_esEs20(vwx30, vwx40, egc)
new_ltEs16(Just(vwx440), Just(vwx450), ty_Ordering) → new_ltEs17(vwx440, vwx450)
new_esEs29(vwx70, vwx73, ty_Integer) → new_esEs15(vwx70, vwx73)
new_ltEs21(vwx83, vwx85, ty_Ordering) → new_ltEs17(vwx83, vwx85)
new_esEs6(vwx32, vwx42, app(app(app(ty_@3, eda), edb), edc)) → new_esEs19(vwx32, vwx42, eda, edb, edc)
new_ltEs17(EQ, LT) → False
new_compare7(vwx30, vwx40, ty_Int) → new_compare26(vwx30, vwx40)
new_ltEs20(vwx71, vwx74, app(app(ty_Either, dd), de)) → new_ltEs13(vwx71, vwx74, dd, de)
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_Int) → new_esEs13(vwx300, vwx400)
new_esEs32(vwx82, vwx84, app(ty_[], hf)) → new_esEs14(vwx82, vwx84, hf)
new_esEs10(vwx30, vwx40, app(ty_Ratio, efa)) → new_esEs20(vwx30, vwx40, efa)
new_ltEs7(True, False) → False
new_esEs38(vwx301, vwx401, ty_Double) → new_esEs18(vwx301, vwx401)
new_pePe(False, vwx160) → vwx160
new_esEs11(vwx30, vwx40, app(app(app(ty_@3, efh), ega), egb)) → new_esEs19(vwx30, vwx40, efh, ega, egb)
new_esEs14([], [], eae) → True
new_esEs23(Just(vwx300), Just(vwx400), app(ty_Maybe, ecc)) → new_esEs23(vwx300, vwx400, ecc)
new_esEs9(vwx30, vwx40, app(app(ty_@2, dgg), dgh)) → new_esEs17(vwx30, vwx40, dgg, dgh)
new_compare8(@3(vwx30, vwx31, vwx32), @3(vwx40, vwx41, vwx42), eh, fa, fb) → new_compare211(vwx30, vwx31, vwx32, vwx40, vwx41, vwx42, new_asAs(new_esEs4(vwx30, vwx40, eh), new_asAs(new_esEs5(vwx31, vwx41, fa), new_esEs6(vwx32, vwx42, fb))), eh, fa, fb)
new_ltEs7(False, True) → True
new_ltEs4(vwx44, vwx45, ty_Char) → new_ltEs14(vwx44, vwx45)
new_ltEs22(vwx442, vwx452, app(ty_Maybe, bbd)) → new_ltEs16(vwx442, vwx452, bbd)
new_compare29(@0, @0) → EQ
new_esEs39(vwx302, vwx402, ty_Integer) → new_esEs15(vwx302, vwx402)
new_esEs28(vwx69, vwx72, ty_@0) → new_esEs21(vwx69, vwx72)
new_esEs30(vwx300, vwx400, ty_Char) → new_esEs16(vwx300, vwx400)
new_esEs29(vwx70, vwx73, app(ty_[], ed)) → new_esEs14(vwx70, vwx73, ed)
new_ltEs21(vwx83, vwx85, ty_Double) → new_ltEs8(vwx83, vwx85)
new_esEs23(Just(vwx300), Just(vwx400), ty_Integer) → new_esEs15(vwx300, vwx400)
new_esEs34(vwx441, vwx451, ty_Float) → new_esEs24(vwx441, vwx451)
new_ltEs13(Left(vwx440), Left(vwx450), ty_Ordering, cae) → new_ltEs17(vwx440, vwx450)
new_esEs5(vwx31, vwx41, ty_Ordering) → new_esEs12(vwx31, vwx41)
new_lt23(vwx440, vwx450, app(app(ty_Either, bga), bgb)) → new_lt5(vwx440, vwx450, bga, bgb)
new_esEs11(vwx30, vwx40, ty_Int) → new_esEs13(vwx30, vwx40)
new_compare14(True, False) → GT
new_esEs25(Right(vwx300), Right(vwx400), ebb, app(ty_Maybe, fbe)) → new_esEs23(vwx300, vwx400, fbe)
new_ltEs15(vwx44, vwx45) → new_fsEs(new_compare26(vwx44, vwx45))
new_lt22(vwx440, vwx450, ty_Double) → new_lt13(vwx440, vwx450)
new_esEs6(vwx32, vwx42, ty_Int) → new_esEs13(vwx32, vwx42)
new_compare11(vwx134, vwx135, vwx136, vwx137, vwx138, vwx139, False, cgc, cgd, cge) → GT
new_esEs23(Just(vwx300), Just(vwx400), ty_Ordering) → new_esEs12(vwx300, vwx400)
new_esEs29(vwx70, vwx73, app(app(ty_@2, eb), ec)) → new_esEs17(vwx70, vwx73, eb, ec)
new_esEs29(vwx70, vwx73, app(app(app(ty_@3, dg), dh), ea)) → new_esEs19(vwx70, vwx73, dg, dh, ea)
new_lt23(vwx440, vwx450, app(app(app(ty_@3, bfb), bfc), bfd)) → new_lt6(vwx440, vwx450, bfb, bfc, bfd)
new_esEs38(vwx301, vwx401, app(app(ty_Either, ffh), fga)) → new_esEs25(vwx301, vwx401, ffh, fga)
new_esEs38(vwx301, vwx401, app(ty_Ratio, fff)) → new_esEs20(vwx301, vwx401, fff)
new_esEs32(vwx82, vwx84, app(ty_Maybe, baa)) → new_esEs23(vwx82, vwx84, baa)
new_compare13(vwx112, vwx113, False, fbh, fca) → GT
new_esEs10(vwx30, vwx40, ty_Ordering) → new_esEs12(vwx30, vwx40)
new_esEs33(vwx440, vwx450, ty_Float) → new_esEs24(vwx440, vwx450)
new_esEs9(vwx30, vwx40, ty_Double) → new_esEs18(vwx30, vwx40)
new_esEs39(vwx302, vwx402, ty_Float) → new_esEs24(vwx302, vwx402)
new_esEs25(Left(vwx300), Left(vwx400), app(ty_Maybe, fac), ebc) → new_esEs23(vwx300, vwx400, fac)
new_esEs37(vwx300, vwx400, ty_Double) → new_esEs18(vwx300, vwx400)
new_lt7(vwx69, vwx72) → new_esEs12(new_compare28(vwx69, vwx72), LT)
new_ltEs20(vwx71, vwx74, app(ty_[], dc)) → new_ltEs12(vwx71, vwx74, dc)
new_ltEs5(@3(vwx440, vwx441, vwx442), @3(vwx450, vwx451, vwx452), bab, bac, bbh) → new_pePe(new_lt22(vwx440, vwx450, bab), new_asAs(new_esEs33(vwx440, vwx450, bab), new_pePe(new_lt21(vwx441, vwx451, bac), new_asAs(new_esEs34(vwx441, vwx451, bac), new_ltEs22(vwx442, vwx452, bbh)))))
new_lt22(vwx440, vwx450, app(app(ty_Either, bde), bdf)) → new_lt5(vwx440, vwx450, bde, bdf)
new_primCmpNat0(Zero, Succ(vwx400)) → LT
new_lt10(vwx70, vwx73, ty_Double) → new_lt13(vwx70, vwx73)
new_ltEs16(Just(vwx440), Just(vwx450), ty_@0) → new_ltEs18(vwx440, vwx450)
new_esEs31(vwx301, vwx401, app(app(app(ty_@3, dfg), dfh), dga)) → new_esEs19(vwx301, vwx401, dfg, dfh, dga)
new_esEs36(vwx300, vwx400, ty_Integer) → new_esEs15(vwx300, vwx400)
new_esEs32(vwx82, vwx84, app(ty_Ratio, dhh)) → new_esEs20(vwx82, vwx84, dhh)
new_ltEs16(Just(vwx440), Just(vwx450), ty_Float) → new_ltEs6(vwx440, vwx450)
new_esEs34(vwx441, vwx451, ty_@0) → new_esEs21(vwx441, vwx451)
new_lt10(vwx70, vwx73, ty_Bool) → new_lt12(vwx70, vwx73)
new_esEs23(Just(vwx300), Just(vwx400), app(app(app(ty_@3, ebg), ebh), eca)) → new_esEs19(vwx300, vwx400, ebg, ebh, eca)
new_ltEs16(Nothing, Nothing, cgh) → True
new_ltEs16(Just(vwx440), Just(vwx450), ty_Int) → new_ltEs15(vwx440, vwx450)
new_esEs11(vwx30, vwx40, app(app(ty_Either, ege), egf)) → new_esEs25(vwx30, vwx40, ege, egf)
new_esEs31(vwx301, vwx401, app(app(ty_@2, dfe), dff)) → new_esEs17(vwx301, vwx401, dfe, dff)
new_lt21(vwx441, vwx451, ty_@0) → new_lt19(vwx441, vwx451)
new_ltEs14(vwx44, vwx45) → new_fsEs(new_compare19(vwx44, vwx45))
new_esEs30(vwx300, vwx400, ty_@0) → new_esEs21(vwx300, vwx400)
new_esEs12(LT, LT) → True
new_esEs36(vwx300, vwx400, ty_@0) → new_esEs21(vwx300, vwx400)
new_esEs28(vwx69, vwx72, app(ty_Maybe, cc)) → new_esEs23(vwx69, vwx72, cc)
new_esEs23(Just(vwx300), Just(vwx400), ty_Char) → new_esEs16(vwx300, vwx400)
new_esEs8(vwx31, vwx41, ty_Bool) → new_esEs22(vwx31, vwx41)
new_pePe(True, vwx160) → True
new_primEqNat0(Zero, Zero) → True
new_esEs38(vwx301, vwx401, ty_Char) → new_esEs16(vwx301, vwx401)
new_ltEs9(vwx44, vwx45, cgg) → new_fsEs(new_compare16(vwx44, vwx45, cgg))
new_lt20(vwx82, vwx84, app(app(ty_Either, hg), hh)) → new_lt5(vwx82, vwx84, hg, hh)
new_lt10(vwx70, vwx73, ty_Float) → new_lt11(vwx70, vwx73)
new_esEs4(vwx30, vwx40, app(ty_Maybe, eba)) → new_esEs23(vwx30, vwx40, eba)
new_esEs37(vwx300, vwx400, ty_Bool) → new_esEs22(vwx300, vwx400)
new_lt23(vwx440, vwx450, ty_Integer) → new_lt15(vwx440, vwx450)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_Float) → new_ltEs6(vwx440, vwx450)
new_esEs5(vwx31, vwx41, ty_Integer) → new_esEs15(vwx31, vwx41)
new_ltEs13(Left(vwx440), Left(vwx450), ty_Int, cae) → new_ltEs15(vwx440, vwx450)
new_compare27(Just(vwx30), Nothing, cfa) → GT
new_ltEs4(vwx44, vwx45, app(app(ty_Either, cbd), cae)) → new_ltEs13(vwx44, vwx45, cbd, cae)
new_esEs10(vwx30, vwx40, ty_@0) → new_esEs21(vwx30, vwx40)
new_esEs39(vwx302, vwx402, ty_@0) → new_esEs21(vwx302, vwx402)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_Double) → new_ltEs8(vwx440, vwx450)
new_esEs30(vwx300, vwx400, app(ty_Ratio, deh)) → new_esEs20(vwx300, vwx400, deh)
new_ltEs22(vwx442, vwx452, ty_Char) → new_ltEs14(vwx442, vwx452)
new_esEs34(vwx441, vwx451, ty_Bool) → new_esEs22(vwx441, vwx451)
new_ltEs22(vwx442, vwx452, ty_Integer) → new_ltEs10(vwx442, vwx452)
new_esEs6(vwx32, vwx42, app(ty_[], ecf)) → new_esEs14(vwx32, vwx42, ecf)
new_esEs6(vwx32, vwx42, ty_Ordering) → new_esEs12(vwx32, vwx42)
new_esEs35(vwx440, vwx450, app(app(ty_Either, bga), bgb)) → new_esEs25(vwx440, vwx450, bga, bgb)
new_ltEs17(GT, LT) → False
new_lt16(vwx69, vwx72, bh) → new_esEs12(new_compare5(vwx69, vwx72, bh), LT)
new_esEs29(vwx70, vwx73, ty_Int) → new_esEs13(vwx70, vwx73)
new_esEs11(vwx30, vwx40, ty_Char) → new_esEs16(vwx30, vwx40)
new_sr(vwx31, vwx41) → new_primMulInt(vwx31, vwx41)
new_compare12(vwx105, vwx106, False, egh, eha) → GT
new_esEs25(Left(vwx300), Left(vwx400), app(ty_[], ehd), ebc) → new_esEs14(vwx300, vwx400, ehd)
new_lt22(vwx440, vwx450, app(app(app(ty_@3, bcg), bch), bda)) → new_lt6(vwx440, vwx450, bcg, bch, bda)
new_ltEs24(vwx441, vwx451, ty_Ordering) → new_ltEs17(vwx441, vwx451)
new_esEs29(vwx70, vwx73, app(app(ty_Either, ee), ef)) → new_esEs25(vwx70, vwx73, ee, ef)
new_ltEs21(vwx83, vwx85, app(ty_Maybe, gg)) → new_ltEs16(vwx83, vwx85, gg)
new_esEs5(vwx31, vwx41, app(app(app(ty_@3, dce), dcf), dcg)) → new_esEs19(vwx31, vwx41, dce, dcf, dcg)
new_compare28(GT, GT) → EQ
new_esEs4(vwx30, vwx40, app(ty_[], eae)) → new_esEs14(vwx30, vwx40, eae)
new_ltEs21(vwx83, vwx85, app(app(ty_@2, gb), gc)) → new_ltEs11(vwx83, vwx85, gb, gc)
new_ltEs4(vwx44, vwx45, app(ty_Maybe, cgh)) → new_ltEs16(vwx44, vwx45, cgh)
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_Float) → new_esEs24(vwx300, vwx400)
new_esEs11(vwx30, vwx40, ty_Ordering) → new_esEs12(vwx30, vwx40)
new_esEs34(vwx441, vwx451, ty_Double) → new_esEs18(vwx441, vwx451)
new_lt9(vwx69, vwx72, ty_@0) → new_lt19(vwx69, vwx72)
new_esEs13(vwx30, vwx40) → new_primEqInt(vwx30, vwx40)
new_primPlusNat0(Succ(vwx1620), vwx4100) → Succ(Succ(new_primPlusNat1(vwx1620, vwx4100)))
new_esEs23(Nothing, Just(vwx400), eba) → False
new_esEs23(Just(vwx300), Nothing, eba) → False
new_compare7(vwx30, vwx40, app(app(app(ty_@3, bgf), bgg), bgh)) → new_compare8(vwx30, vwx40, bgf, bgg, bgh)
new_lt22(vwx440, vwx450, app(ty_Maybe, bdg)) → new_lt8(vwx440, vwx450, bdg)
new_lt22(vwx440, vwx450, app(ty_[], bdd)) → new_lt16(vwx440, vwx450, bdd)
new_ltEs24(vwx441, vwx451, app(app(ty_@2, bed), bee)) → new_ltEs11(vwx441, vwx451, bed, bee)
new_esEs37(vwx300, vwx400, ty_Char) → new_esEs16(vwx300, vwx400)
new_esEs37(vwx300, vwx400, app(app(app(ty_@3, fea), feb), fec)) → new_esEs19(vwx300, vwx400, fea, feb, fec)
new_lt10(vwx70, vwx73, ty_@0) → new_lt19(vwx70, vwx73)
new_esEs25(Right(vwx300), Right(vwx400), ebb, app(ty_[], faf)) → new_esEs14(vwx300, vwx400, faf)
new_compare110(vwx149, vwx150, vwx151, vwx152, False, vwx154, dbh, dca) → new_compare111(vwx149, vwx150, vwx151, vwx152, vwx154, dbh, dca)
new_lt20(vwx82, vwx84, ty_Char) → new_lt17(vwx82, vwx84)
new_esEs16(Char(vwx300), Char(vwx400)) → new_primEqNat0(vwx300, vwx400)
new_esEs7(vwx30, vwx40, ty_@0) → new_esEs21(vwx30, vwx40)
new_ltEs20(vwx71, vwx74, ty_Int) → new_ltEs15(vwx71, vwx74)
new_ltEs20(vwx71, vwx74, app(app(app(ty_@3, ce), cf), cg)) → new_ltEs5(vwx71, vwx74, ce, cf, cg)
new_ltEs16(Nothing, Just(vwx450), cgh) → True
new_primEqInt(Neg(Succ(vwx3000)), Neg(Succ(vwx4000))) → new_primEqNat0(vwx3000, vwx4000)
new_lt11(vwx69, vwx72) → new_esEs12(new_compare9(vwx69, vwx72), LT)
new_esEs23(Nothing, Nothing, eba) → True
new_esEs39(vwx302, vwx402, app(app(ty_@2, fgc), fgd)) → new_esEs17(vwx302, vwx402, fgc, fgd)
new_compare14(True, True) → EQ
new_esEs30(vwx300, vwx400, ty_Bool) → new_esEs22(vwx300, vwx400)
new_compare13(vwx112, vwx113, True, fbh, fca) → LT
new_lt5(vwx69, vwx72, ca, cb) → new_esEs12(new_compare18(vwx69, vwx72, ca, cb), LT)
new_ltEs17(LT, GT) → True
new_esEs11(vwx30, vwx40, app(ty_Maybe, egd)) → new_esEs23(vwx30, vwx40, egd)
new_primPlusNat1(Zero, Succ(vwx41000)) → Succ(vwx41000)
new_primPlusNat1(Succ(vwx16200), Zero) → Succ(vwx16200)
new_esEs6(vwx32, vwx42, ty_Char) → new_esEs16(vwx32, vwx42)
new_ltEs19(vwx51, vwx52, app(ty_Ratio, chb)) → new_ltEs9(vwx51, vwx52, chb)
new_esEs12(LT, EQ) → False
new_esEs12(EQ, LT) → False
new_esEs9(vwx30, vwx40, app(ty_[], dgf)) → new_esEs14(vwx30, vwx40, dgf)
new_lt23(vwx440, vwx450, ty_Char) → new_lt17(vwx440, vwx450)
new_esEs14(:(vwx300, vwx301), [], eae) → False
new_esEs14([], :(vwx400, vwx401), eae) → False
new_compare111(vwx149, vwx150, vwx151, vwx152, True, dbh, dca) → LT
new_esEs8(vwx31, vwx41, app(app(app(ty_@3, dba), dbb), dbc)) → new_esEs19(vwx31, vwx41, dba, dbb, dbc)
new_lt22(vwx440, vwx450, app(app(ty_@2, bdb), bdc)) → new_lt4(vwx440, vwx450, bdb, bdc)
new_lt19(vwx69, vwx72) → new_esEs12(new_compare29(vwx69, vwx72), LT)
new_compare28(LT, EQ) → LT
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_esEs20(:%(vwx300, vwx301), :%(vwx400, vwx401), ddd) → new_asAs(new_esEs26(vwx300, vwx400, ddd), new_esEs27(vwx301, vwx401, ddd))
new_esEs35(vwx440, vwx450, ty_Double) → new_esEs18(vwx440, vwx450)
new_lt23(vwx440, vwx450, ty_Bool) → new_lt12(vwx440, vwx450)
new_ltEs16(Just(vwx440), Just(vwx450), app(ty_Maybe, cdf)) → new_ltEs16(vwx440, vwx450, cdf)
new_esEs31(vwx301, vwx401, app(ty_Ratio, dgb)) → new_esEs20(vwx301, vwx401, dgb)
new_esEs29(vwx70, vwx73, ty_Bool) → new_esEs22(vwx70, vwx73)
new_lt20(vwx82, vwx84, ty_Ordering) → new_lt7(vwx82, vwx84)
new_esEs8(vwx31, vwx41, ty_Double) → new_esEs18(vwx31, vwx41)
new_esEs35(vwx440, vwx450, ty_Int) → new_esEs13(vwx440, vwx450)
new_ltEs21(vwx83, vwx85, ty_@0) → new_ltEs18(vwx83, vwx85)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_Char) → new_ltEs14(vwx440, vwx450)
new_ltEs21(vwx83, vwx85, app(app(ty_Either, ge), gf)) → new_ltEs13(vwx83, vwx85, ge, gf)
new_esEs23(Just(vwx300), Just(vwx400), ty_@0) → new_esEs21(vwx300, vwx400)
new_primEqInt(Neg(Zero), Neg(Succ(vwx4000))) → False
new_primEqInt(Neg(Succ(vwx3000)), Neg(Zero)) → False
new_esEs39(vwx302, vwx402, ty_Char) → new_esEs16(vwx302, vwx402)
new_compare28(GT, LT) → GT
new_esEs23(Just(vwx300), Just(vwx400), app(app(ty_@2, ebe), ebf)) → new_esEs17(vwx300, vwx400, ebe, ebf)
new_lt4(vwx69, vwx72, bf, bg) → new_esEs12(new_compare6(vwx69, vwx72, bf, bg), LT)
new_compare24(vwx44, vwx45, True, cgf, caa) → EQ
new_esEs6(vwx32, vwx42, app(ty_Ratio, edd)) → new_esEs20(vwx32, vwx42, edd)
new_compare10(vwx134, vwx135, vwx136, vwx137, vwx138, vwx139, True, vwx141, cgc, cgd, cge) → new_compare11(vwx134, vwx135, vwx136, vwx137, vwx138, vwx139, True, cgc, cgd, cge)
new_esEs6(vwx32, vwx42, ty_Float) → new_esEs24(vwx32, vwx42)
new_esEs7(vwx30, vwx40, app(ty_Maybe, dac)) → new_esEs23(vwx30, vwx40, dac)
new_esEs6(vwx32, vwx42, ty_Bool) → new_esEs22(vwx32, vwx42)
new_esEs28(vwx69, vwx72, app(ty_[], bh)) → new_esEs14(vwx69, vwx72, bh)
new_esEs28(vwx69, vwx72, ty_Int) → new_esEs13(vwx69, vwx72)
new_esEs10(vwx30, vwx40, app(app(app(ty_@3, eef), eeg), eeh)) → new_esEs19(vwx30, vwx40, eef, eeg, eeh)
new_lt21(vwx441, vwx451, app(app(ty_Either, bcd), bce)) → new_lt5(vwx441, vwx451, bcd, bce)
new_ltEs17(EQ, EQ) → True
new_ltEs19(vwx51, vwx52, ty_Ordering) → new_ltEs17(vwx51, vwx52)
new_esEs10(vwx30, vwx40, app(app(ty_Either, efc), efd)) → new_esEs25(vwx30, vwx40, efc, efd)
new_esEs25(Left(vwx300), Left(vwx400), ty_Int, ebc) → new_esEs13(vwx300, vwx400)
new_ltEs19(vwx51, vwx52, app(ty_Maybe, ceh)) → new_ltEs16(vwx51, vwx52, ceh)
new_ltEs23(vwx58, vwx59, ty_@0) → new_ltEs18(vwx58, vwx59)
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs34(vwx441, vwx451, app(app(ty_Either, bcd), bce)) → new_esEs25(vwx441, vwx451, bcd, bce)
new_esEs25(Left(vwx300), Left(vwx400), ty_Bool, ebc) → new_esEs22(vwx300, vwx400)
new_esEs6(vwx32, vwx42, ty_@0) → new_esEs21(vwx32, vwx42)
new_esEs39(vwx302, vwx402, ty_Ordering) → new_esEs12(vwx302, vwx402)
new_ltEs24(vwx441, vwx451, app(app(app(ty_@3, bea), beb), bec)) → new_ltEs5(vwx441, vwx451, bea, beb, bec)
new_ltEs23(vwx58, vwx59, ty_Char) → new_ltEs14(vwx58, vwx59)
new_lt9(vwx69, vwx72, ty_Ordering) → new_lt7(vwx69, vwx72)
new_ltEs4(vwx44, vwx45, app(app(ty_@2, bdh), bfe)) → new_ltEs11(vwx44, vwx45, bdh, bfe)
new_lt20(vwx82, vwx84, app(app(app(ty_@3, gh), ha), hb)) → new_lt6(vwx82, vwx84, gh, ha, hb)
new_esEs7(vwx30, vwx40, ty_Float) → new_esEs24(vwx30, vwx40)
new_esEs37(vwx300, vwx400, app(ty_Maybe, fee)) → new_esEs23(vwx300, vwx400, fee)
new_primCmpNat0(Succ(vwx300), Succ(vwx400)) → new_primCmpNat0(vwx300, vwx400)
new_compare11(vwx134, vwx135, vwx136, vwx137, vwx138, vwx139, True, cgc, cgd, cge) → LT
new_compare5(:(vwx30, vwx31), [], bge) → GT
new_esEs38(vwx301, vwx401, ty_Float) → new_esEs24(vwx301, vwx401)
new_compare7(vwx30, vwx40, app(ty_Maybe, bhf)) → new_compare27(vwx30, vwx40, bhf)
new_lt10(vwx70, vwx73, ty_Ordering) → new_lt7(vwx70, vwx73)
new_compare18(Right(vwx30), Left(vwx40), bhg, bhh) → GT
new_ltEs20(vwx71, vwx74, app(ty_Maybe, df)) → new_ltEs16(vwx71, vwx74, df)
new_esEs7(vwx30, vwx40, ty_Bool) → new_esEs22(vwx30, vwx40)
new_ltEs4(vwx44, vwx45, ty_@0) → new_ltEs18(vwx44, vwx45)
new_primEqInt(Pos(Succ(vwx3000)), Pos(Succ(vwx4000))) → new_primEqNat0(vwx3000, vwx4000)
new_esEs37(vwx300, vwx400, app(app(ty_@2, fdg), fdh)) → new_esEs17(vwx300, vwx400, fdg, fdh)
new_esEs34(vwx441, vwx451, app(ty_Maybe, bcf)) → new_esEs23(vwx441, vwx451, bcf)
new_esEs37(vwx300, vwx400, app(ty_Ratio, fed)) → new_esEs20(vwx300, vwx400, fed)
new_ltEs21(vwx83, vwx85, ty_Char) → new_ltEs14(vwx83, vwx85)
new_compare12(vwx105, vwx106, True, egh, eha) → LT
new_esEs36(vwx300, vwx400, ty_Float) → new_esEs24(vwx300, vwx400)
new_esEs31(vwx301, vwx401, ty_Double) → new_esEs18(vwx301, vwx401)
new_esEs32(vwx82, vwx84, app(app(app(ty_@3, gh), ha), hb)) → new_esEs19(vwx82, vwx84, gh, ha, hb)
new_compare16(:%(vwx30, vwx31), :%(vwx40, vwx41), ty_Integer) → new_compare17(new_sr0(vwx30, vwx41), new_sr0(vwx40, vwx31))
new_esEs38(vwx301, vwx401, ty_Ordering) → new_esEs12(vwx301, vwx401)
new_lt9(vwx69, vwx72, app(ty_[], bh)) → new_lt16(vwx69, vwx72, bh)
new_esEs34(vwx441, vwx451, ty_Char) → new_esEs16(vwx441, vwx451)
new_esEs26(vwx300, vwx400, ty_Integer) → new_esEs15(vwx300, vwx400)
new_esEs37(vwx300, vwx400, app(app(ty_Either, fef), feg)) → new_esEs25(vwx300, vwx400, fef, feg)
new_ltEs13(Left(vwx440), Left(vwx450), ty_@0, cae) → new_ltEs18(vwx440, vwx450)
new_esEs34(vwx441, vwx451, app(app(ty_@2, bca), bcb)) → new_esEs17(vwx441, vwx451, bca, bcb)
new_esEs26(vwx300, vwx400, ty_Int) → new_esEs13(vwx300, vwx400)
new_primEqNat0(Succ(vwx3000), Succ(vwx4000)) → new_primEqNat0(vwx3000, vwx4000)
new_compare9(Float(vwx30, vwx31), Float(vwx40, vwx41)) → new_compare26(new_sr(vwx30, vwx40), new_sr(vwx31, vwx41))
new_lt9(vwx69, vwx72, ty_Integer) → new_lt15(vwx69, vwx72)
new_ltEs24(vwx441, vwx451, ty_Int) → new_ltEs15(vwx441, vwx451)
new_esEs33(vwx440, vwx450, app(ty_[], bdd)) → new_esEs14(vwx440, vwx450, bdd)
new_esEs25(Left(vwx300), Left(vwx400), app(ty_Ratio, fab), ebc) → new_esEs20(vwx300, vwx400, fab)
new_ltEs19(vwx51, vwx52, app(app(ty_Either, cef), ceg)) → new_ltEs13(vwx51, vwx52, cef, ceg)
new_compare28(EQ, LT) → GT
new_compare28(GT, EQ) → GT
new_lt9(vwx69, vwx72, ty_Bool) → new_lt12(vwx69, vwx72)
new_compare5(:(vwx30, vwx31), :(vwx40, vwx41), bge) → new_primCompAux0(vwx30, vwx40, new_compare5(vwx31, vwx41, bge), bge)
new_compare210(vwx82, vwx83, vwx84, vwx85, False, ff, hc) → new_compare110(vwx82, vwx83, vwx84, vwx85, new_lt20(vwx82, vwx84, ff), new_asAs(new_esEs32(vwx82, vwx84, ff), new_ltEs21(vwx83, vwx85, hc)), ff, hc)
new_primCompAux00(vwx38, LT) → LT
new_esEs33(vwx440, vwx450, app(ty_Maybe, bdg)) → new_esEs23(vwx440, vwx450, bdg)
new_compare212(vwx58, vwx59, True, edh) → EQ
new_primCmpInt(Neg(Succ(vwx300)), Neg(vwx40)) → new_primCmpNat0(vwx40, Succ(vwx300))
new_lt10(vwx70, vwx73, app(app(app(ty_@3, dg), dh), ea)) → new_lt6(vwx70, vwx73, dg, dh, ea)
new_compare18(Left(vwx30), Left(vwx40), bhg, bhh) → new_compare24(vwx30, vwx40, new_esEs9(vwx30, vwx40, bhg), bhg, bhh)
new_ltEs4(vwx44, vwx45, app(app(app(ty_@3, bab), bac), bbh)) → new_ltEs5(vwx44, vwx45, bab, bac, bbh)
new_esEs12(EQ, EQ) → True
new_lt21(vwx441, vwx451, ty_Double) → new_lt13(vwx441, vwx451)
new_compare19(Char(vwx30), Char(vwx40)) → new_primCmpNat0(vwx30, vwx40)
new_esEs35(vwx440, vwx450, ty_Ordering) → new_esEs12(vwx440, vwx450)
new_primEqInt(Pos(Zero), Pos(Succ(vwx4000))) → False
new_primEqInt(Pos(Succ(vwx3000)), Pos(Zero)) → False
new_lt9(vwx69, vwx72, app(ty_Maybe, cc)) → new_lt8(vwx69, vwx72, cc)
new_esEs35(vwx440, vwx450, app(ty_Maybe, bgc)) → new_esEs23(vwx440, vwx450, bgc)
new_esEs21(@0, @0) → True
new_esEs39(vwx302, vwx402, ty_Int) → new_esEs13(vwx302, vwx402)
new_esEs4(vwx30, vwx40, ty_Bool) → new_esEs22(vwx30, vwx40)
new_esEs30(vwx300, vwx400, ty_Float) → new_esEs24(vwx300, vwx400)
new_ltEs4(vwx44, vwx45, ty_Double) → new_ltEs8(vwx44, vwx45)
new_primCmpNat0(Zero, Zero) → EQ
new_ltEs22(vwx442, vwx452, ty_Float) → new_ltEs6(vwx442, vwx452)
new_primCmpNat0(Succ(vwx300), Zero) → GT
new_lt20(vwx82, vwx84, app(app(ty_@2, hd), he)) → new_lt4(vwx82, vwx84, hd, he)
new_esEs29(vwx70, vwx73, ty_Double) → new_esEs18(vwx70, vwx73)
new_lt22(vwx440, vwx450, ty_@0) → new_lt19(vwx440, vwx450)
new_compare14(False, False) → EQ
new_esEs36(vwx300, vwx400, ty_Double) → new_esEs18(vwx300, vwx400)
new_primCmpInt(Neg(Zero), Pos(Succ(vwx400))) → LT
new_esEs5(vwx31, vwx41, app(app(ty_Either, ddb), ddc)) → new_esEs25(vwx31, vwx41, ddb, ddc)
new_ltEs20(vwx71, vwx74, ty_Integer) → new_ltEs10(vwx71, vwx74)
new_lt10(vwx70, vwx73, app(ty_Ratio, ddf)) → new_lt14(vwx70, vwx73, ddf)
new_esEs10(vwx30, vwx40, ty_Float) → new_esEs24(vwx30, vwx40)
new_ltEs10(vwx44, vwx45) → new_fsEs(new_compare17(vwx44, vwx45))
new_esEs37(vwx300, vwx400, ty_Float) → new_esEs24(vwx300, vwx400)
new_sr0(Integer(vwx400), Integer(vwx310)) → Integer(new_primMulInt(vwx400, vwx310))
new_esEs9(vwx30, vwx40, ty_Float) → new_esEs24(vwx30, vwx40)
new_primPlusNat1(Succ(vwx16200), Succ(vwx41000)) → Succ(Succ(new_primPlusNat1(vwx16200, vwx41000)))
new_esEs4(vwx30, vwx40, ty_Char) → new_esEs16(vwx30, vwx40)
new_primEqInt(Neg(Succ(vwx3000)), Pos(vwx400)) → False
new_primEqInt(Pos(Succ(vwx3000)), Neg(vwx400)) → False
new_ltEs24(vwx441, vwx451, ty_@0) → new_ltEs18(vwx441, vwx451)
new_esEs33(vwx440, vwx450, ty_Ordering) → new_esEs12(vwx440, vwx450)
new_esEs9(vwx30, vwx40, ty_@0) → new_esEs21(vwx30, vwx40)
new_esEs10(vwx30, vwx40, app(ty_[], eec)) → new_esEs14(vwx30, vwx40, eec)
new_lt21(vwx441, vwx451, ty_Bool) → new_lt12(vwx441, vwx451)
new_esEs18(Double(vwx300, vwx301), Double(vwx400, vwx401)) → new_esEs13(new_sr(vwx300, vwx400), new_sr(vwx301, vwx401))
new_esEs11(vwx30, vwx40, ty_Integer) → new_esEs15(vwx30, vwx40)
new_ltEs13(Left(vwx440), Left(vwx450), app(app(ty_@2, caf), cag), cae) → new_ltEs11(vwx440, vwx450, caf, cag)
new_ltEs23(vwx58, vwx59, app(app(ty_@2, cfe), cff)) → new_ltEs11(vwx58, vwx59, cfe, cff)
new_esEs11(vwx30, vwx40, ty_Double) → new_esEs18(vwx30, vwx40)
new_ltEs24(vwx441, vwx451, ty_Integer) → new_ltEs10(vwx441, vwx451)
new_compare7(vwx30, vwx40, ty_Char) → new_compare19(vwx30, vwx40)
new_esEs30(vwx300, vwx400, ty_Ordering) → new_esEs12(vwx300, vwx400)
new_esEs37(vwx300, vwx400, ty_@0) → new_esEs21(vwx300, vwx400)
new_primEqInt(Neg(Zero), Pos(Succ(vwx4000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(vwx4000))) → False
new_esEs31(vwx301, vwx401, ty_Integer) → new_esEs15(vwx301, vwx401)
new_ltEs20(vwx71, vwx74, ty_Float) → new_ltEs6(vwx71, vwx74)
new_ltEs20(vwx71, vwx74, app(app(ty_@2, da), db)) → new_ltEs11(vwx71, vwx74, da, db)
new_primCmpInt(Pos(Zero), Pos(Succ(vwx400))) → new_primCmpNat0(Zero, Succ(vwx400))
new_primCompAux00(vwx38, EQ) → vwx38
new_esEs33(vwx440, vwx450, app(ty_Ratio, eab)) → new_esEs20(vwx440, vwx450, eab)
new_esEs9(vwx30, vwx40, ty_Ordering) → new_esEs12(vwx30, vwx40)
new_compare28(EQ, EQ) → EQ
new_lt21(vwx441, vwx451, ty_Char) → new_lt17(vwx441, vwx451)
new_esEs27(vwx301, vwx401, ty_Int) → new_esEs13(vwx301, vwx401)
new_esEs38(vwx301, vwx401, app(app(ty_@2, ffa), ffb)) → new_esEs17(vwx301, vwx401, ffa, ffb)
new_lt10(vwx70, vwx73, app(ty_Maybe, eg)) → new_lt8(vwx70, vwx73, eg)
new_ltEs23(vwx58, vwx59, app(app(ty_Either, cfh), cga)) → new_ltEs13(vwx58, vwx59, cfh, cga)
new_esEs39(vwx302, vwx402, app(app(app(ty_@3, fge), fgf), fgg)) → new_esEs19(vwx302, vwx402, fge, fgf, fgg)
new_esEs6(vwx32, vwx42, app(app(ty_Either, edf), edg)) → new_esEs25(vwx32, vwx42, edf, edg)
new_esEs4(vwx30, vwx40, app(app(ty_Either, ebb), ebc)) → new_esEs25(vwx30, vwx40, ebb, ebc)
new_esEs25(Left(vwx300), Right(vwx400), ebb, ebc) → False
new_esEs25(Right(vwx300), Left(vwx400), ebb, ebc) → False
new_esEs39(vwx302, vwx402, app(ty_Ratio, fgh)) → new_esEs20(vwx302, vwx402, fgh)
new_esEs28(vwx69, vwx72, ty_Ordering) → new_esEs12(vwx69, vwx72)
new_esEs31(vwx301, vwx401, ty_Int) → new_esEs13(vwx301, vwx401)
new_esEs7(vwx30, vwx40, app(app(app(ty_@3, chg), chh), daa)) → new_esEs19(vwx30, vwx40, chg, chh, daa)
new_esEs30(vwx300, vwx400, ty_Double) → new_esEs18(vwx300, vwx400)
new_ltEs16(Just(vwx440), Nothing, cgh) → False
new_compare28(LT, GT) → LT
new_ltEs23(vwx58, vwx59, ty_Double) → new_ltEs8(vwx58, vwx59)
new_esEs36(vwx300, vwx400, app(app(ty_@2, fcc), fcd)) → new_esEs17(vwx300, vwx400, fcc, fcd)
new_compare7(vwx30, vwx40, app(app(ty_Either, bhd), bhe)) → new_compare18(vwx30, vwx40, bhd, bhe)
new_esEs38(vwx301, vwx401, app(ty_Maybe, ffg)) → new_esEs23(vwx301, vwx401, ffg)
new_esEs7(vwx30, vwx40, app(app(ty_@2, che), chf)) → new_esEs17(vwx30, vwx40, che, chf)
new_esEs35(vwx440, vwx450, app(app(app(ty_@3, bfb), bfc), bfd)) → new_esEs19(vwx440, vwx450, bfb, bfc, bfd)
new_not(False) → True
new_ltEs13(Right(vwx440), Right(vwx450), cbd, app(ty_[], ccb)) → new_ltEs12(vwx440, vwx450, ccb)
new_esEs8(vwx31, vwx41, ty_Float) → new_esEs24(vwx31, vwx41)
new_ltEs12(vwx44, vwx45, bgd) → new_fsEs(new_compare5(vwx44, vwx45, bgd))
new_ltEs13(Right(vwx440), Right(vwx450), cbd, app(ty_Ratio, fde)) → new_ltEs9(vwx440, vwx450, fde)
new_esEs9(vwx30, vwx40, app(app(app(ty_@3, dha), dhb), dhc)) → new_esEs19(vwx30, vwx40, dha, dhb, dhc)
new_esEs25(Right(vwx300), Right(vwx400), ebb, app(app(ty_@2, fag), fah)) → new_esEs17(vwx300, vwx400, fag, fah)
new_primPlusNat0(Zero, vwx4100) → Succ(vwx4100)
new_primCmpInt(Pos(Succ(vwx300)), Pos(vwx40)) → new_primCmpNat0(Succ(vwx300), vwx40)
new_esEs33(vwx440, vwx450, ty_Double) → new_esEs18(vwx440, vwx450)
new_esEs12(EQ, GT) → False
new_esEs12(GT, EQ) → False
new_esEs7(vwx30, vwx40, ty_Char) → new_esEs16(vwx30, vwx40)
new_ltEs4(vwx44, vwx45, ty_Float) → new_ltEs6(vwx44, vwx45)
new_esEs4(vwx30, vwx40, ty_Ordering) → new_esEs12(vwx30, vwx40)
new_ltEs6(vwx44, vwx45) → new_fsEs(new_compare9(vwx44, vwx45))
new_esEs33(vwx440, vwx450, ty_Bool) → new_esEs22(vwx440, vwx450)
new_esEs10(vwx30, vwx40, ty_Bool) → new_esEs22(vwx30, vwx40)
new_esEs4(vwx30, vwx40, app(app(ty_@2, ddh), dea)) → new_esEs17(vwx30, vwx40, ddh, dea)
new_esEs33(vwx440, vwx450, app(app(app(ty_@3, bcg), bch), bda)) → new_esEs19(vwx440, vwx450, bcg, bch, bda)
new_lt9(vwx69, vwx72, ty_Int) → new_lt18(vwx69, vwx72)
new_ltEs19(vwx51, vwx52, app(ty_[], cee)) → new_ltEs12(vwx51, vwx52, cee)
new_ltEs13(Left(vwx440), Left(vwx450), ty_Float, cae) → new_ltEs6(vwx440, vwx450)
new_esEs30(vwx300, vwx400, app(app(ty_@2, dec), ded)) → new_esEs17(vwx300, vwx400, dec, ded)
new_compare7(vwx30, vwx40, ty_Float) → new_compare9(vwx30, vwx40)
new_esEs9(vwx30, vwx40, ty_Char) → new_esEs16(vwx30, vwx40)
new_esEs37(vwx300, vwx400, ty_Integer) → new_esEs15(vwx300, vwx400)
new_lt20(vwx82, vwx84, app(ty_Ratio, dhh)) → new_lt14(vwx82, vwx84, dhh)
new_lt20(vwx82, vwx84, ty_Double) → new_lt13(vwx82, vwx84)
new_ltEs23(vwx58, vwx59, ty_Float) → new_ltEs6(vwx58, vwx59)
new_ltEs19(vwx51, vwx52, ty_@0) → new_ltEs18(vwx51, vwx52)
new_ltEs24(vwx441, vwx451, app(ty_Maybe, bfa)) → new_ltEs16(vwx441, vwx451, bfa)
new_esEs34(vwx441, vwx451, app(app(app(ty_@3, bbe), bbf), bbg)) → new_esEs19(vwx441, vwx451, bbe, bbf, bbg)
new_compare212(vwx58, vwx59, False, edh) → new_compare112(vwx58, vwx59, new_ltEs23(vwx58, vwx59, edh), edh)
new_ltEs19(vwx51, vwx52, ty_Float) → new_ltEs6(vwx51, vwx52)
new_esEs11(vwx30, vwx40, ty_@0) → new_esEs21(vwx30, vwx40)
new_lt10(vwx70, vwx73, ty_Char) → new_lt17(vwx70, vwx73)
new_ltEs23(vwx58, vwx59, ty_Integer) → new_ltEs10(vwx58, vwx59)
new_ltEs13(Left(vwx440), Left(vwx450), app(ty_Maybe, cbc), cae) → new_ltEs16(vwx440, vwx450, cbc)
new_primCmpInt(Pos(Succ(vwx300)), Neg(vwx40)) → GT
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_Integer) → new_esEs15(vwx300, vwx400)
new_esEs35(vwx440, vwx450, ty_@0) → new_esEs21(vwx440, vwx450)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, app(app(app(ty_@3, cbe), cbf), cbg)) → new_ltEs5(vwx440, vwx450, cbe, cbf, cbg)
new_ltEs4(vwx44, vwx45, app(ty_Ratio, cgg)) → new_ltEs9(vwx44, vwx45, cgg)
new_esEs10(vwx30, vwx40, app(app(ty_@2, eed), eee)) → new_esEs17(vwx30, vwx40, eed, eee)
new_primMulInt(Pos(vwx310), Pos(vwx410)) → Pos(new_primMulNat0(vwx310, vwx410))
new_compare28(LT, LT) → EQ
new_compare27(Just(vwx30), Just(vwx40), cfa) → new_compare212(vwx30, vwx40, new_esEs11(vwx30, vwx40, cfa), cfa)
new_esEs4(vwx30, vwx40, ty_Float) → new_esEs24(vwx30, vwx40)
new_ltEs23(vwx58, vwx59, app(ty_Maybe, cgb)) → new_ltEs16(vwx58, vwx59, cgb)
new_ltEs4(vwx44, vwx45, ty_Bool) → new_ltEs7(vwx44, vwx45)
new_esEs35(vwx440, vwx450, app(ty_Ratio, ehb)) → new_esEs20(vwx440, vwx450, ehb)
new_compare7(vwx30, vwx40, app(app(ty_@2, bha), bhb)) → new_compare6(vwx30, vwx40, bha, bhb)
new_primMulInt(Neg(vwx310), Neg(vwx410)) → Pos(new_primMulNat0(vwx310, vwx410))
new_esEs10(vwx30, vwx40, ty_Integer) → new_esEs15(vwx30, vwx40)
new_esEs36(vwx300, vwx400, app(app(ty_Either, fdb), fdc)) → new_esEs25(vwx300, vwx400, fdb, fdc)
new_ltEs19(vwx51, vwx52, ty_Integer) → new_ltEs10(vwx51, vwx52)
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_Ordering) → new_esEs12(vwx300, vwx400)
new_esEs23(Just(vwx300), Just(vwx400), ty_Float) → new_esEs24(vwx300, vwx400)
new_ltEs13(Left(vwx440), Left(vwx450), ty_Bool, cae) → new_ltEs7(vwx440, vwx450)
new_primEqNat0(Zero, Succ(vwx4000)) → False
new_primEqNat0(Succ(vwx3000), Zero) → False
new_compare25(vwx51, vwx52, True, cdg, cha) → EQ
new_ltEs16(Just(vwx440), Just(vwx450), ty_Double) → new_ltEs8(vwx440, vwx450)
new_ltEs16(Just(vwx440), Just(vwx450), ty_Integer) → new_ltEs10(vwx440, vwx450)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs9(vwx30, vwx40, ty_Int) → new_esEs13(vwx30, vwx40)
new_ltEs21(vwx83, vwx85, ty_Float) → new_ltEs6(vwx83, vwx85)
new_esEs5(vwx31, vwx41, ty_Double) → new_esEs18(vwx31, vwx41)
new_ltEs21(vwx83, vwx85, app(ty_Ratio, eaa)) → new_ltEs9(vwx83, vwx85, eaa)
new_esEs9(vwx30, vwx40, app(ty_Maybe, dhe)) → new_esEs23(vwx30, vwx40, dhe)
new_ltEs21(vwx83, vwx85, ty_Bool) → new_ltEs7(vwx83, vwx85)
new_esEs11(vwx30, vwx40, app(app(ty_@2, eff), efg)) → new_esEs17(vwx30, vwx40, eff, efg)
new_compare7(vwx30, vwx40, app(ty_Ratio, chc)) → new_compare16(vwx30, vwx40, chc)
new_lt21(vwx441, vwx451, ty_Float) → new_lt11(vwx441, vwx451)
new_ltEs22(vwx442, vwx452, ty_Double) → new_ltEs8(vwx442, vwx452)
new_lt21(vwx441, vwx451, ty_Ordering) → new_lt7(vwx441, vwx451)
new_ltEs21(vwx83, vwx85, ty_Integer) → new_ltEs10(vwx83, vwx85)
new_esEs35(vwx440, vwx450, ty_Char) → new_esEs16(vwx440, vwx450)
new_ltEs21(vwx83, vwx85, app(app(app(ty_@3, fg), fh), ga)) → new_ltEs5(vwx83, vwx85, fg, fh, ga)
new_esEs9(vwx30, vwx40, app(app(ty_Either, dhf), dhg)) → new_esEs25(vwx30, vwx40, dhf, dhg)
new_lt21(vwx441, vwx451, app(app(app(ty_@3, bbe), bbf), bbg)) → new_lt6(vwx441, vwx451, bbe, bbf, bbg)
new_lt18(vwx69, vwx72) → new_esEs12(new_compare26(vwx69, vwx72), LT)
new_esEs36(vwx300, vwx400, ty_Char) → new_esEs16(vwx300, vwx400)
new_ltEs18(vwx44, vwx45) → new_fsEs(new_compare29(vwx44, vwx45))
new_esEs5(vwx31, vwx41, app(ty_Ratio, dch)) → new_esEs20(vwx31, vwx41, dch)
new_ltEs4(vwx44, vwx45, ty_Ordering) → new_ltEs17(vwx44, vwx45)
new_esEs4(vwx30, vwx40, ty_Int) → new_esEs13(vwx30, vwx40)
new_lt21(vwx441, vwx451, ty_Integer) → new_lt15(vwx441, vwx451)
new_ltEs19(vwx51, vwx52, ty_Bool) → new_ltEs7(vwx51, vwx52)
new_lt23(vwx440, vwx450, app(ty_[], bfh)) → new_lt16(vwx440, vwx450, bfh)
new_ltEs22(vwx442, vwx452, app(app(ty_@2, bag), bah)) → new_ltEs11(vwx442, vwx452, bag, bah)
new_ltEs24(vwx441, vwx451, ty_Char) → new_ltEs14(vwx441, vwx451)
new_primCmpInt(Neg(Zero), Neg(Succ(vwx400))) → new_primCmpNat0(Succ(vwx400), Zero)
new_esEs5(vwx31, vwx41, app(ty_Maybe, dda)) → new_esEs23(vwx31, vwx41, dda)
new_ltEs23(vwx58, vwx59, app(ty_[], cfg)) → new_ltEs12(vwx58, vwx59, cfg)
new_primCmpInt(Pos(Zero), Neg(Succ(vwx400))) → GT
new_esEs22(True, True) → True
new_compare7(vwx30, vwx40, ty_Double) → new_compare15(vwx30, vwx40)
new_compare211(vwx69, vwx70, vwx71, vwx72, vwx73, vwx74, True, cd, bd, be) → EQ
new_ltEs22(vwx442, vwx452, app(ty_[], bba)) → new_ltEs12(vwx442, vwx452, bba)
new_esEs28(vwx69, vwx72, app(app(ty_@2, bf), bg)) → new_esEs17(vwx69, vwx72, bf, bg)
new_ltEs19(vwx51, vwx52, ty_Double) → new_ltEs8(vwx51, vwx52)
new_compare18(Right(vwx30), Right(vwx40), bhg, bhh) → new_compare25(vwx30, vwx40, new_esEs10(vwx30, vwx40, bhh), bhg, bhh)
new_lt22(vwx440, vwx450, ty_Integer) → new_lt15(vwx440, vwx450)
new_esEs7(vwx30, vwx40, ty_Double) → new_esEs18(vwx30, vwx40)
new_ltEs19(vwx51, vwx52, ty_Char) → new_ltEs14(vwx51, vwx52)
new_esEs31(vwx301, vwx401, ty_Float) → new_esEs24(vwx301, vwx401)
new_primCompAux0(vwx30, vwx40, vwx8, bge) → new_primCompAux00(vwx8, new_compare7(vwx30, vwx40, bge))
new_ltEs13(Left(vwx440), Left(vwx450), app(app(ty_Either, cba), cbb), cae) → new_ltEs13(vwx440, vwx450, cba, cbb)
new_compare5([], :(vwx40, vwx41), bge) → LT
new_esEs34(vwx441, vwx451, ty_Integer) → new_esEs15(vwx441, vwx451)
new_esEs33(vwx440, vwx450, app(app(ty_Either, bde), bdf)) → new_esEs25(vwx440, vwx450, bde, bdf)
new_ltEs20(vwx71, vwx74, ty_Ordering) → new_ltEs17(vwx71, vwx74)
new_lt23(vwx440, vwx450, ty_@0) → new_lt19(vwx440, vwx450)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, app(app(ty_Either, ccc), ccd)) → new_ltEs13(vwx440, vwx450, ccc, ccd)
new_lt10(vwx70, vwx73, ty_Integer) → new_lt15(vwx70, vwx73)
new_ltEs13(Left(vwx440), Left(vwx450), app(ty_[], cah), cae) → new_ltEs12(vwx440, vwx450, cah)
new_esEs23(Just(vwx300), Just(vwx400), ty_Bool) → new_esEs22(vwx300, vwx400)
new_lt20(vwx82, vwx84, app(ty_[], hf)) → new_lt16(vwx82, vwx84, hf)
new_lt9(vwx69, vwx72, app(app(ty_@2, bf), bg)) → new_lt4(vwx69, vwx72, bf, bg)
new_ltEs24(vwx441, vwx451, ty_Float) → new_ltEs6(vwx441, vwx451)
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_ltEs4(vwx44, vwx45, ty_Integer) → new_ltEs10(vwx44, vwx45)
new_esEs36(vwx300, vwx400, app(app(app(ty_@3, fce), fcf), fcg)) → new_esEs19(vwx300, vwx400, fce, fcf, fcg)
new_esEs33(vwx440, vwx450, ty_Char) → new_esEs16(vwx440, vwx450)
new_lt9(vwx69, vwx72, ty_Float) → new_lt11(vwx69, vwx72)
new_esEs10(vwx30, vwx40, ty_Double) → new_esEs18(vwx30, vwx40)
new_ltEs20(vwx71, vwx74, ty_@0) → new_ltEs18(vwx71, vwx74)
new_esEs11(vwx30, vwx40, app(ty_[], efe)) → new_esEs14(vwx30, vwx40, efe)
new_esEs5(vwx31, vwx41, ty_Float) → new_esEs24(vwx31, vwx41)
new_ltEs20(vwx71, vwx74, ty_Bool) → new_ltEs7(vwx71, vwx74)
new_esEs31(vwx301, vwx401, ty_Bool) → new_esEs22(vwx301, vwx401)
new_esEs35(vwx440, vwx450, ty_Bool) → new_esEs22(vwx440, vwx450)
new_esEs23(Just(vwx300), Just(vwx400), app(ty_[], ebd)) → new_esEs14(vwx300, vwx400, ebd)
new_esEs36(vwx300, vwx400, ty_Bool) → new_esEs22(vwx300, vwx400)
new_asAs(False, vwx100) → False
new_lt10(vwx70, vwx73, app(app(ty_Either, ee), ef)) → new_lt5(vwx70, vwx73, ee, ef)
new_esEs36(vwx300, vwx400, app(ty_Maybe, fda)) → new_esEs23(vwx300, vwx400, fda)
new_primMulInt(Pos(vwx310), Neg(vwx410)) → Neg(new_primMulNat0(vwx310, vwx410))
new_primMulInt(Neg(vwx310), Pos(vwx410)) → Neg(new_primMulNat0(vwx310, vwx410))
new_lt20(vwx82, vwx84, ty_@0) → new_lt19(vwx82, vwx84)
new_esEs36(vwx300, vwx400, ty_Ordering) → new_esEs12(vwx300, vwx400)
new_primMulNat0(Succ(vwx3100), Zero) → Zero
new_primMulNat0(Zero, Succ(vwx4100)) → Zero
new_ltEs13(Left(vwx440), Right(vwx450), cbd, cae) → True
new_lt6(vwx69, vwx72, ba, bb, bc) → new_esEs12(new_compare8(vwx69, vwx72, ba, bb, bc), LT)
new_esEs22(False, False) → True
new_esEs30(vwx300, vwx400, app(ty_Maybe, dfa)) → new_esEs23(vwx300, vwx400, dfa)
new_esEs7(vwx30, vwx40, app(ty_Ratio, dab)) → new_esEs20(vwx30, vwx40, dab)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_Int) → new_ltEs15(vwx440, vwx450)
new_esEs35(vwx440, vwx450, app(ty_[], bfh)) → new_esEs14(vwx440, vwx450, bfh)
new_esEs36(vwx300, vwx400, ty_Int) → new_esEs13(vwx300, vwx400)
new_compare17(Integer(vwx30), Integer(vwx40)) → new_primCmpInt(vwx30, vwx40)
new_esEs38(vwx301, vwx401, app(app(app(ty_@3, ffc), ffd), ffe)) → new_esEs19(vwx301, vwx401, ffc, ffd, ffe)
new_esEs39(vwx302, vwx402, app(app(ty_Either, fhb), fhc)) → new_esEs25(vwx302, vwx402, fhb, fhc)
new_esEs32(vwx82, vwx84, ty_Double) → new_esEs18(vwx82, vwx84)
new_esEs38(vwx301, vwx401, ty_Int) → new_esEs13(vwx301, vwx401)
new_esEs22(True, False) → False
new_esEs22(False, True) → False
new_esEs6(vwx32, vwx42, ty_Double) → new_esEs18(vwx32, vwx42)
new_ltEs11(@2(vwx440, vwx441), @2(vwx450, vwx451), bdh, bfe) → new_pePe(new_lt23(vwx440, vwx450, bdh), new_asAs(new_esEs35(vwx440, vwx450, bdh), new_ltEs24(vwx441, vwx451, bfe)))
new_ltEs22(vwx442, vwx452, ty_@0) → new_ltEs18(vwx442, vwx452)
new_esEs28(vwx69, vwx72, ty_Double) → new_esEs18(vwx69, vwx72)
new_esEs28(vwx69, vwx72, ty_Float) → new_esEs24(vwx69, vwx72)
new_lt17(vwx69, vwx72) → new_esEs12(new_compare19(vwx69, vwx72), LT)
new_esEs8(vwx31, vwx41, ty_Integer) → new_esEs15(vwx31, vwx41)
new_esEs28(vwx69, vwx72, ty_Integer) → new_esEs15(vwx69, vwx72)
new_ltEs16(Just(vwx440), Just(vwx450), app(ty_[], cdc)) → new_ltEs12(vwx440, vwx450, cdc)
new_esEs36(vwx300, vwx400, app(ty_[], fcb)) → new_esEs14(vwx300, vwx400, fcb)
new_esEs5(vwx31, vwx41, ty_Char) → new_esEs16(vwx31, vwx41)
new_lt22(vwx440, vwx450, ty_Char) → new_lt17(vwx440, vwx450)
new_lt23(vwx440, vwx450, ty_Float) → new_lt11(vwx440, vwx450)
new_ltEs16(Just(vwx440), Just(vwx450), app(app(ty_Either, cdd), cde)) → new_ltEs13(vwx440, vwx450, cdd, cde)
new_esEs8(vwx31, vwx41, ty_@0) → new_esEs21(vwx31, vwx41)
new_ltEs4(vwx44, vwx45, app(ty_[], bgd)) → new_ltEs12(vwx44, vwx45, bgd)
new_esEs7(vwx30, vwx40, ty_Ordering) → new_esEs12(vwx30, vwx40)
new_esEs23(Just(vwx300), Just(vwx400), app(app(ty_Either, ecd), ece)) → new_esEs25(vwx300, vwx400, ecd, ece)
new_compare111(vwx149, vwx150, vwx151, vwx152, False, dbh, dca) → GT
new_ltEs4(vwx44, vwx45, ty_Int) → new_ltEs15(vwx44, vwx45)
new_compare27(Nothing, Just(vwx40), cfa) → LT
new_esEs33(vwx440, vwx450, ty_@0) → new_esEs21(vwx440, vwx450)
new_lt13(vwx69, vwx72) → new_esEs12(new_compare15(vwx69, vwx72), LT)
new_esEs28(vwx69, vwx72, app(app(app(ty_@3, ba), bb), bc)) → new_esEs19(vwx69, vwx72, ba, bb, bc)
new_ltEs17(GT, GT) → True
new_ltEs24(vwx441, vwx451, app(app(ty_Either, beg), beh)) → new_ltEs13(vwx441, vwx451, beg, beh)
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_Char) → new_esEs16(vwx300, vwx400)
new_esEs7(vwx30, vwx40, ty_Int) → new_esEs13(vwx30, vwx40)
new_esEs31(vwx301, vwx401, ty_Char) → new_esEs16(vwx301, vwx401)
new_esEs4(vwx30, vwx40, app(ty_Ratio, ddd)) → new_esEs20(vwx30, vwx40, ddd)
new_ltEs13(Right(vwx440), Left(vwx450), cbd, cae) → False
new_ltEs17(GT, EQ) → False
new_esEs35(vwx440, vwx450, ty_Float) → new_esEs24(vwx440, vwx450)
new_ltEs13(Left(vwx440), Left(vwx450), app(app(app(ty_@3, cab), cac), cad), cae) → new_ltEs5(vwx440, vwx450, cab, cac, cad)
new_esEs30(vwx300, vwx400, ty_Int) → new_esEs13(vwx300, vwx400)
new_ltEs19(vwx51, vwx52, app(app(app(ty_@3, cdh), cea), ceb)) → new_ltEs5(vwx51, vwx52, cdh, cea, ceb)
new_esEs25(Left(vwx300), Left(vwx400), ty_Double, ebc) → new_esEs18(vwx300, vwx400)
new_esEs7(vwx30, vwx40, app(ty_[], chd)) → new_esEs14(vwx30, vwx40, chd)
new_ltEs22(vwx442, vwx452, ty_Ordering) → new_ltEs17(vwx442, vwx452)
new_esEs32(vwx82, vwx84, app(app(ty_@2, hd), he)) → new_esEs17(vwx82, vwx84, hd, he)
new_esEs34(vwx441, vwx451, app(ty_[], bcc)) → new_esEs14(vwx441, vwx451, bcc)
new_esEs38(vwx301, vwx401, ty_@0) → new_esEs21(vwx301, vwx401)
new_esEs8(vwx31, vwx41, app(app(ty_@2, dag), dah)) → new_esEs17(vwx31, vwx41, dag, dah)
new_lt9(vwx69, vwx72, app(app(ty_Either, ca), cb)) → new_lt5(vwx69, vwx72, ca, cb)
new_esEs37(vwx300, vwx400, app(ty_[], fdf)) → new_esEs14(vwx300, vwx400, fdf)
new_esEs5(vwx31, vwx41, app(app(ty_@2, dcc), dcd)) → new_esEs17(vwx31, vwx41, dcc, dcd)
new_esEs37(vwx300, vwx400, ty_Int) → new_esEs13(vwx300, vwx400)
new_lt9(vwx69, vwx72, app(ty_Ratio, dde)) → new_lt14(vwx69, vwx72, dde)
new_ltEs16(Just(vwx440), Just(vwx450), app(app(ty_@2, cda), cdb)) → new_ltEs11(vwx440, vwx450, cda, cdb)
new_lt23(vwx440, vwx450, app(app(ty_@2, bff), bfg)) → new_lt4(vwx440, vwx450, bff, bfg)
new_esEs28(vwx69, vwx72, app(ty_Ratio, dde)) → new_esEs20(vwx69, vwx72, dde)
new_esEs28(vwx69, vwx72, ty_Bool) → new_esEs22(vwx69, vwx72)
new_lt22(vwx440, vwx450, ty_Float) → new_lt11(vwx440, vwx450)
new_esEs32(vwx82, vwx84, ty_Ordering) → new_esEs12(vwx82, vwx84)
new_ltEs19(vwx51, vwx52, ty_Int) → new_ltEs15(vwx51, vwx52)
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_Bool) → new_esEs22(vwx300, vwx400)
new_ltEs13(Left(vwx440), Left(vwx450), app(ty_Ratio, fdd), cae) → new_ltEs9(vwx440, vwx450, fdd)
new_compare6(@2(vwx30, vwx31), @2(vwx40, vwx41), fc, fd) → new_compare210(vwx30, vwx31, vwx40, vwx41, new_asAs(new_esEs7(vwx30, vwx40, fc), new_esEs8(vwx31, vwx41, fd)), fc, fd)
new_ltEs20(vwx71, vwx74, ty_Double) → new_ltEs8(vwx71, vwx74)
new_lt20(vwx82, vwx84, ty_Float) → new_lt11(vwx82, vwx84)
new_esEs32(vwx82, vwx84, ty_Bool) → new_esEs22(vwx82, vwx84)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_Bool) → new_ltEs7(vwx440, vwx450)
new_lt23(vwx440, vwx450, app(ty_Maybe, bgc)) → new_lt8(vwx440, vwx450, bgc)
new_esEs8(vwx31, vwx41, ty_Int) → new_esEs13(vwx31, vwx41)
new_lt20(vwx82, vwx84, ty_Integer) → new_lt15(vwx82, vwx84)
new_esEs32(vwx82, vwx84, ty_@0) → new_esEs21(vwx82, vwx84)
new_esEs4(vwx30, vwx40, ty_Integer) → new_esEs15(vwx30, vwx40)
new_lt20(vwx82, vwx84, ty_Bool) → new_lt12(vwx82, vwx84)
new_compare24(vwx44, vwx45, False, cgf, caa) → new_compare12(vwx44, vwx45, new_ltEs4(vwx44, vwx45, cgf), cgf, caa)
new_esEs25(Left(vwx300), Left(vwx400), app(app(ty_@2, ehe), ehf), ebc) → new_esEs17(vwx300, vwx400, ehe, ehf)
new_esEs25(Right(vwx300), Right(vwx400), ebb, app(app(app(ty_@3, fba), fbb), fbc)) → new_esEs19(vwx300, vwx400, fba, fbb, fbc)
new_esEs30(vwx300, vwx400, ty_Integer) → new_esEs15(vwx300, vwx400)
new_esEs5(vwx31, vwx41, ty_@0) → new_esEs21(vwx31, vwx41)
new_esEs6(vwx32, vwx42, app(ty_Maybe, ede)) → new_esEs23(vwx32, vwx42, ede)
new_ltEs7(False, False) → True
new_esEs9(vwx30, vwx40, app(ty_Ratio, dhd)) → new_esEs20(vwx30, vwx40, dhd)
new_esEs31(vwx301, vwx401, ty_Ordering) → new_esEs12(vwx301, vwx401)
new_esEs25(Left(vwx300), Left(vwx400), ty_Integer, ebc) → new_esEs15(vwx300, vwx400)
new_compare112(vwx122, vwx123, False, eeb) → GT
new_esEs10(vwx30, vwx40, ty_Int) → new_esEs13(vwx30, vwx40)
new_esEs4(vwx30, vwx40, ty_@0) → new_esEs21(vwx30, vwx40)
new_esEs12(GT, GT) → True
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_Integer) → new_ltEs10(vwx440, vwx450)
new_esEs29(vwx70, vwx73, ty_Char) → new_esEs16(vwx70, vwx73)
new_lt21(vwx441, vwx451, app(app(ty_@2, bca), bcb)) → new_lt4(vwx441, vwx451, bca, bcb)
new_esEs14(:(vwx300, vwx301), :(vwx400, vwx401), eae) → new_asAs(new_esEs36(vwx300, vwx400, eae), new_esEs14(vwx301, vwx401, eae))
new_lt10(vwx70, vwx73, app(ty_[], ed)) → new_lt16(vwx70, vwx73, ed)
new_esEs8(vwx31, vwx41, app(ty_Maybe, dbe)) → new_esEs23(vwx31, vwx41, dbe)
new_esEs30(vwx300, vwx400, app(app(ty_Either, dfb), dfc)) → new_esEs25(vwx300, vwx400, dfb, dfc)
new_lt20(vwx82, vwx84, app(ty_Maybe, baa)) → new_lt8(vwx82, vwx84, baa)
new_esEs29(vwx70, vwx73, ty_Ordering) → new_esEs12(vwx70, vwx73)
new_primPlusNat1(Zero, Zero) → Zero
new_ltEs13(Left(vwx440), Left(vwx450), ty_Double, cae) → new_ltEs8(vwx440, vwx450)
new_esEs6(vwx32, vwx42, ty_Integer) → new_esEs15(vwx32, vwx42)
new_lt23(vwx440, vwx450, ty_Ordering) → new_lt7(vwx440, vwx450)
new_ltEs8(vwx44, vwx45) → new_fsEs(new_compare15(vwx44, vwx45))
new_asAs(True, vwx100) → vwx100
new_esEs25(Left(vwx300), Left(vwx400), ty_Char, ebc) → new_esEs16(vwx300, vwx400)
new_primMulNat0(Succ(vwx3100), Succ(vwx4100)) → new_primPlusNat0(new_primMulNat0(vwx3100, Succ(vwx4100)), vwx4100)
new_esEs30(vwx300, vwx400, app(app(app(ty_@3, dee), def), deg)) → new_esEs19(vwx300, vwx400, dee, def, deg)
new_ltEs17(LT, EQ) → True
new_compare16(:%(vwx30, vwx31), :%(vwx40, vwx41), ty_Int) → new_compare26(new_sr(vwx30, vwx41), new_sr(vwx40, vwx31))
new_esEs25(Right(vwx300), Right(vwx400), ebb, ty_@0) → new_esEs21(vwx300, vwx400)
new_esEs39(vwx302, vwx402, ty_Bool) → new_esEs22(vwx302, vwx402)
new_ltEs16(Just(vwx440), Just(vwx450), ty_Bool) → new_ltEs7(vwx440, vwx450)
new_ltEs24(vwx441, vwx451, ty_Bool) → new_ltEs7(vwx441, vwx451)
new_lt22(vwx440, vwx450, ty_Ordering) → new_lt7(vwx440, vwx450)
new_ltEs13(Right(vwx440), Right(vwx450), cbd, ty_Ordering) → new_ltEs17(vwx440, vwx450)
new_esEs34(vwx441, vwx451, ty_Int) → new_esEs13(vwx441, vwx451)
new_lt22(vwx440, vwx450, ty_Bool) → new_lt12(vwx440, vwx450)
new_lt23(vwx440, vwx450, ty_Double) → new_lt13(vwx440, vwx450)
new_esEs29(vwx70, vwx73, ty_@0) → new_esEs21(vwx70, vwx73)
new_esEs31(vwx301, vwx401, app(app(ty_Either, dgd), dge)) → new_esEs25(vwx301, vwx401, dgd, dge)
new_esEs8(vwx31, vwx41, ty_Ordering) → new_esEs12(vwx31, vwx41)
new_esEs25(Left(vwx300), Left(vwx400), app(app(ty_Either, fad), fae), ebc) → new_esEs25(vwx300, vwx400, fad, fae)
new_compare7(vwx30, vwx40, ty_Ordering) → new_compare28(vwx30, vwx40)
new_lt9(vwx69, vwx72, ty_Double) → new_lt13(vwx69, vwx72)
new_esEs25(Right(vwx300), Right(vwx400), ebb, app(app(ty_Either, fbf), fbg)) → new_esEs25(vwx300, vwx400, fbf, fbg)
new_ltEs21(vwx83, vwx85, ty_Int) → new_ltEs15(vwx83, vwx85)
new_compare5([], [], bge) → EQ
new_ltEs16(Just(vwx440), Just(vwx450), ty_Char) → new_ltEs14(vwx440, vwx450)
new_ltEs23(vwx58, vwx59, ty_Bool) → new_ltEs7(vwx58, vwx59)
new_esEs10(vwx30, vwx40, ty_Char) → new_esEs16(vwx30, vwx40)
new_ltEs17(EQ, GT) → True
new_lt23(vwx440, vwx450, ty_Int) → new_lt18(vwx440, vwx450)
new_lt21(vwx441, vwx451, ty_Int) → new_lt18(vwx441, vwx451)
new_lt22(vwx440, vwx450, app(ty_Ratio, eab)) → new_lt14(vwx440, vwx450, eab)
new_ltEs22(vwx442, vwx452, ty_Int) → new_ltEs15(vwx442, vwx452)
new_primCompAux00(vwx38, GT) → GT
new_esEs32(vwx82, vwx84, ty_Int) → new_esEs13(vwx82, vwx84)
new_compare14(False, True) → LT
new_compare25(vwx51, vwx52, False, cdg, cha) → new_compare13(vwx51, vwx52, new_ltEs19(vwx51, vwx52, cha), cdg, cha)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs23(Just(vwx300), Just(vwx400), ty_Int) → new_esEs13(vwx300, vwx400)
new_esEs23(Just(vwx300), Just(vwx400), app(ty_Ratio, ecb)) → new_esEs20(vwx300, vwx400, ecb)
new_esEs25(Left(vwx300), Left(vwx400), ty_@0, ebc) → new_esEs21(vwx300, vwx400)
new_ltEs13(Left(vwx440), Left(vwx450), ty_Char, cae) → new_ltEs14(vwx440, vwx450)
new_ltEs23(vwx58, vwx59, app(app(app(ty_@3, cfb), cfc), cfd)) → new_ltEs5(vwx58, vwx59, cfb, cfc, cfd)
new_esEs39(vwx302, vwx402, app(ty_[], fgb)) → new_esEs14(vwx302, vwx402, fgb)
new_esEs39(vwx302, vwx402, ty_Double) → new_esEs18(vwx302, vwx402)
new_lt10(vwx70, vwx73, ty_Int) → new_lt18(vwx70, vwx73)
new_esEs38(vwx301, vwx401, ty_Integer) → new_esEs15(vwx301, vwx401)
new_esEs31(vwx301, vwx401, ty_@0) → new_esEs21(vwx301, vwx401)
new_ltEs22(vwx442, vwx452, ty_Bool) → new_ltEs7(vwx442, vwx452)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_esEs27(vwx301, vwx401, ty_Integer) → new_esEs15(vwx301, vwx401)
new_primCmpInt(Neg(Succ(vwx300)), Pos(vwx40)) → LT
new_ltEs16(Just(vwx440), Just(vwx450), app(app(app(ty_@3, ccf), ccg), cch)) → new_ltEs5(vwx440, vwx450, ccf, ccg, cch)
new_compare210(vwx82, vwx83, vwx84, vwx85, True, ff, hc) → EQ
new_not(True) → False
new_esEs25(Left(vwx300), Left(vwx400), app(app(app(ty_@3, ehg), ehh), faa), ebc) → new_esEs19(vwx300, vwx400, ehg, ehh, faa)
new_lt14(vwx69, vwx72, dde) → new_esEs12(new_compare16(vwx69, vwx72, dde), LT)

The set Q consists of the following terms:

new_esEs28(x0, x1, ty_Char)
new_lt5(x0, x1, x2, x3)
new_ltEs19(x0, x1, ty_Bool)
new_esEs25(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_compare25(x0, x1, False, x2, x3)
new_lt23(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Bool)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs34(x0, x1, ty_Ordering)
new_primPlusNat0(Zero, x0)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, ty_Double)
new_lt9(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_esEs23(Nothing, Nothing, x0)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_@0)
new_esEs17(@2(x0, x1), @2(x2, x3), x4, x5)
new_fsEs(x0)
new_ltEs21(x0, x1, ty_Int)
new_ltEs4(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, app(ty_[], x2))
new_esEs25(Left(x0), Left(x1), ty_Int, x2)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Left(x1), x2, x3)
new_ltEs13(Left(x0), Right(x1), x2, x3)
new_esEs23(Nothing, Just(x0), x1)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, app(ty_Ratio, x2))
new_ltEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_compare27(Nothing, Nothing, x0)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_lt9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_esEs29(x0, x1, ty_Float)
new_esEs25(Left(x0), Left(x1), ty_@0, x2)
new_esEs34(x0, x1, ty_Float)
new_esEs11(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_Float)
new_esEs11(x0, x1, ty_Char)
new_compare12(x0, x1, True, x2, x3)
new_lt22(x0, x1, app(ty_Ratio, x2))
new_compare7(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(EQ, GT)
new_ltEs17(GT, EQ)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt14(x0, x1, x2)
new_esEs10(x0, x1, ty_Ordering)
new_esEs25(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs19(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs33(x0, x1, ty_Char)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs25(Left(x0), Left(x1), app(ty_[], x2), x3)
new_primCmpNat0(Succ(x0), Zero)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt15(x0, x1)
new_esEs30(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs4(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_compare210(x0, x1, x2, x3, True, x4, x5)
new_esEs32(x0, x1, ty_Integer)
new_compare18(Left(x0), Right(x1), x2, x3)
new_compare18(Right(x0), Left(x1), x2, x3)
new_esEs39(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs4(x0, x1, ty_Ordering)
new_esEs25(Left(x0), Left(x1), ty_Ordering, x2)
new_compare14(True, True)
new_ltEs19(x0, x1, ty_Float)
new_lt10(x0, x1, ty_Integer)
new_esEs39(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, ty_Ordering)
new_esEs13(x0, x1)
new_lt13(x0, x1)
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Bool)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs12(EQ, GT)
new_esEs12(GT, EQ)
new_ltEs21(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Int)
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs20(x0, x1, ty_Int)
new_esEs22(True, False)
new_esEs22(False, True)
new_esEs36(x0, x1, ty_@0)
new_esEs14([], [], x0)
new_lt9(x0, x1, ty_Char)
new_primPlusNat1(Succ(x0), Zero)
new_primCmpNat0(Succ(x0), Succ(x1))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_compare17(Integer(x0), Integer(x1))
new_esEs30(x0, x1, ty_Double)
new_ltEs12(x0, x1, x2)
new_ltEs4(x0, x1, ty_Integer)
new_esEs23(Just(x0), Just(x1), ty_Char)
new_esEs31(x0, x1, ty_Double)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_lt10(x0, x1, ty_Char)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare7(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs12(GT, GT)
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_compare111(x0, x1, x2, x3, True, x4, x5)
new_ltEs16(Just(x0), Nothing, x1)
new_esEs31(x0, x1, ty_Integer)
new_ltEs7(True, True)
new_lt20(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), ty_Char, x2)
new_esEs33(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Integer)
new_esEs28(x0, x1, ty_Ordering)
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare7(x0, x1, ty_Int)
new_compare7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs23(Just(x0), Just(x1), ty_Integer)
new_ltEs23(x0, x1, ty_Bool)
new_primMulNat0(Succ(x0), Zero)
new_esEs10(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Ordering)
new_esEs39(x0, x1, app(ty_[], x2))
new_esEs14(:(x0, x1), [], x2)
new_esEs10(x0, x1, ty_Char)
new_ltEs13(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs29(x0, x1, ty_Bool)
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_primCmpNat0(Zero, Succ(x0))
new_compare7(x0, x1, app(ty_[], x2))
new_ltEs16(Just(x0), Just(x1), ty_Char)
new_ltEs7(False, True)
new_ltEs7(True, False)
new_esEs36(x0, x1, app(ty_[], x2))
new_compare211(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs7(x0, x1, ty_Int)
new_primCompAux00(x0, GT)
new_ltEs4(x0, x1, ty_Float)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs36(x0, x1, ty_Int)
new_lt22(x0, x1, ty_Integer)
new_ltEs16(Nothing, Nothing, x0)
new_esEs28(x0, x1, ty_Int)
new_compare5([], :(x0, x1), x2)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Int)
new_esEs28(x0, x1, app(ty_[], x2))
new_compare29(@0, @0)
new_ltEs4(x0, x1, app(ty_[], x2))
new_ltEs11(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs23(Just(x0), Just(x1), ty_@0)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_esEs39(x0, x1, ty_Char)
new_ltEs21(x0, x1, ty_Double)
new_esEs25(Left(x0), Left(x1), ty_Char, x2)
new_lt20(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Int)
new_primEqNat0(Zero, Zero)
new_esEs10(x0, x1, ty_Double)
new_pePe(True, x0)
new_esEs34(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_@0)
new_esEs25(Right(x0), Right(x1), x2, ty_Integer)
new_compare110(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs25(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs16(Just(x0), Just(x1), ty_@0)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Float)
new_lt21(x0, x1, app(ty_[], x2))
new_compare13(x0, x1, False, x2, x3)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs26(x0, x1, ty_Integer)
new_esEs18(Double(x0, x1), Double(x2, x3))
new_ltEs22(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Bool)
new_esEs14(:(x0, x1), :(x2, x3), x4)
new_esEs25(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs13(Right(x0), Right(x1), x2, ty_Int)
new_lt18(x0, x1)
new_primMulNat0(Zero, Zero)
new_compare11(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_esEs8(x0, x1, app(ty_[], x2))
new_compare10(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs29(x0, x1, ty_Double)
new_lt9(x0, x1, ty_Double)
new_esEs25(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs32(x0, x1, ty_Int)
new_esEs25(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs4(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, ty_Ordering)
new_ltEs13(Left(x0), Left(x1), ty_Int, x2)
new_esEs28(x0, x1, ty_Double)
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_ltEs21(x0, x1, ty_Float)
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs23(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs13(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs16(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_Integer)
new_ltEs4(x0, x1, app(ty_Ratio, x2))
new_lt23(x0, x1, app(ty_Maybe, x2))
new_ltEs16(Nothing, Just(x0), x1)
new_esEs6(x0, x1, ty_Bool)
new_esEs6(x0, x1, ty_Integer)
new_ltEs10(x0, x1)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_lt10(x0, x1, ty_Ordering)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs22(x0, x1, ty_Bool)
new_ltEs21(x0, x1, ty_@0)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_compare9(Float(x0, x1), Float(x2, x3))
new_lt21(x0, x1, ty_Double)
new_asAs(False, x0)
new_esEs11(x0, x1, ty_@0)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs16(Just(x0), Just(x1), app(ty_Ratio, x2))
new_compare111(x0, x1, x2, x3, False, x4, x5)
new_esEs9(x0, x1, ty_Char)
new_lt10(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Integer)
new_esEs31(x0, x1, ty_Ordering)
new_ltEs16(Just(x0), Just(x1), ty_Integer)
new_compare5(:(x0, x1), [], x2)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Char)
new_lt22(x0, x1, ty_Float)
new_compare14(False, True)
new_esEs25(Right(x0), Right(x1), x2, ty_Bool)
new_compare14(True, False)
new_esEs25(Right(x0), Right(x1), x2, ty_Double)
new_primPlusNat0(Succ(x0), x1)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_compare28(LT, GT)
new_compare28(GT, LT)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs20(:%(x0, x1), :%(x2, x3), x4)
new_compare7(x0, x1, ty_Integer)
new_esEs23(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs38(x0, x1, ty_Ordering)
new_esEs8(x0, x1, ty_Float)
new_ltEs24(x0, x1, ty_Char)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs36(x0, x1, ty_Char)
new_ltEs9(x0, x1, x2)
new_compare19(Char(x0), Char(x1))
new_esEs35(x0, x1, ty_Integer)
new_esEs33(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_compare18(Left(x0), Left(x1), x2, x3)
new_compare7(x0, x1, ty_Ordering)
new_esEs38(x0, x1, ty_Int)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_esEs35(x0, x1, ty_Double)
new_asAs(True, x0)
new_esEs7(x0, x1, ty_Double)
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_esEs25(Left(x0), Left(x1), ty_Bool, x2)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_lt17(x0, x1)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_ltEs4(x0, x1, ty_@0)
new_ltEs16(Just(x0), Just(x1), ty_Bool)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare16(:%(x0, x1), :%(x2, x3), ty_Int)
new_lt10(x0, x1, ty_Float)
new_lt11(x0, x1)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs18(x0, x1)
new_compare10(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_esEs12(EQ, LT)
new_esEs12(LT, EQ)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Int)
new_esEs34(x0, x1, ty_Bool)
new_ltEs13(Left(x0), Left(x1), ty_@0, x2)
new_ltEs13(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_lt22(x0, x1, ty_Double)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_compare5(:(x0, x1), :(x2, x3), x4)
new_esEs5(x0, x1, ty_Int)
new_primEqNat0(Succ(x0), Zero)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_primPlusNat1(Zero, Zero)
new_esEs37(x0, x1, ty_Bool)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_esEs10(x0, x1, app(ty_[], x2))
new_esEs15(Integer(x0), Integer(x1))
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_compare7(x0, x1, ty_@0)
new_esEs23(Just(x0), Just(x1), app(ty_[], x2))
new_esEs12(EQ, EQ)
new_esEs39(x0, x1, ty_@0)
new_esEs9(x0, x1, ty_Int)
new_lt9(x0, x1, ty_Float)
new_esEs5(x0, x1, ty_@0)
new_ltEs15(x0, x1)
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs28(x0, x1, ty_@0)
new_esEs9(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_lt22(x0, x1, ty_Int)
new_ltEs22(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Ordering)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, ty_Ordering)
new_lt21(x0, x1, ty_Int)
new_esEs37(x0, x1, ty_Float)
new_esEs25(Right(x0), Right(x1), x2, ty_@0)
new_ltEs21(x0, x1, app(ty_[], x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs13(Left(x0), Left(x1), ty_Bool, x2)
new_esEs25(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_compare28(EQ, GT)
new_compare28(GT, EQ)
new_ltEs8(x0, x1)
new_compare212(x0, x1, True, x2)
new_ltEs16(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs25(Left(x0), Right(x1), x2, x3)
new_esEs25(Right(x0), Left(x1), x2, x3)
new_ltEs20(x0, x1, ty_Bool)
new_esEs16(Char(x0), Char(x1))
new_esEs34(x0, x1, app(ty_[], x2))
new_lt10(x0, x1, ty_Double)
new_esEs35(x0, x1, ty_Bool)
new_esEs7(x0, x1, ty_@0)
new_compare7(x0, x1, ty_Char)
new_esEs35(x0, x1, ty_Int)
new_esEs38(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs24(Float(x0, x1), Float(x2, x3))
new_lt22(x0, x1, ty_Char)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, ty_Float)
new_ltEs24(x0, x1, app(ty_[], x2))
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_compare211(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_compare7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare28(LT, EQ)
new_compare28(EQ, LT)
new_esEs32(x0, x1, ty_Bool)
new_esEs12(GT, LT)
new_esEs12(LT, GT)
new_esEs39(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Bool)
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, ty_Bool)
new_ltEs16(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, app(ty_[], x2))
new_compare18(Right(x0), Right(x1), x2, x3)
new_lt21(x0, x1, ty_Integer)
new_esEs35(x0, x1, ty_Char)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_ltEs13(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs21(x0, x1, ty_Bool)
new_ltEs24(x0, x1, ty_Bool)
new_esEs30(x0, x1, ty_Integer)
new_esEs4(x0, x1, ty_Int)
new_lt20(x0, x1, ty_Int)
new_esEs9(x0, x1, ty_Float)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_Ordering)
new_lt10(x0, x1, ty_Int)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Integer)
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare28(GT, GT)
new_lt10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(x0, x1, ty_Integer)
new_primMulNat0(Zero, Succ(x0))
new_ltEs17(GT, GT)
new_esEs23(Just(x0), Just(x1), ty_Int)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs24(x0, x1, ty_Int)
new_ltEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, ty_Int)
new_ltEs16(Just(x0), Just(x1), app(ty_[], x2))
new_esEs33(x0, x1, ty_Float)
new_ltEs13(Right(x0), Right(x1), x2, ty_@0)
new_ltEs13(Right(x0), Right(x1), x2, ty_Double)
new_esEs37(x0, x1, ty_Int)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_ltEs13(Left(x0), Left(x1), ty_Double, x2)
new_esEs14([], :(x0, x1), x2)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs20(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Float)
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs25(Left(x0), Left(x1), ty_Integer, x2)
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs38(x0, x1, ty_Double)
new_esEs29(x0, x1, ty_Int)
new_lt19(x0, x1)
new_esEs5(x0, x1, ty_Ordering)
new_esEs25(Right(x0), Right(x1), x2, ty_Float)
new_esEs5(x0, x1, app(ty_[], x2))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs6(x0, x1, ty_Float)
new_esEs5(x0, x1, ty_Float)
new_ltEs24(x0, x1, ty_@0)
new_lt9(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_Char)
new_esEs25(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs13(Left(x0), Left(x1), ty_Integer, x2)
new_lt9(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_esEs7(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_primEqInt(Neg(Zero), Neg(Zero))
new_ltEs23(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_Float)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_compare16(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, ty_Char)
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs16(Just(x0), Just(x1), ty_Float)
new_esEs38(x0, x1, ty_Char)
new_esEs23(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs25(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_lt22(x0, x1, ty_@0)
new_ltEs13(Left(x0), Left(x1), app(ty_[], x2), x3)
new_compare7(x0, x1, ty_Float)
new_lt7(x0, x1)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, ty_@0)
new_ltEs19(x0, x1, app(ty_[], x2))
new_sr0(Integer(x0), Integer(x1))
new_lt6(x0, x1, x2, x3, x4)
new_ltEs19(x0, x1, ty_Double)
new_esEs11(x0, x1, ty_Bool)
new_esEs37(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_pePe(False, x0)
new_compare26(x0, x1)
new_ltEs16(Just(x0), Just(x1), ty_Int)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1, ty_Bool)
new_esEs23(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_lt22(x0, x1, ty_Ordering)
new_compare24(x0, x1, True, x2, x3)
new_compare27(Just(x0), Just(x1), x2)
new_esEs33(x0, x1, ty_Double)
new_compare12(x0, x1, False, x2, x3)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs13(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs13(Left(x0), Left(x1), ty_Float, x2)
new_esEs7(x0, x1, ty_Char)
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, ty_Float)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, ty_Ordering)
new_esEs10(x0, x1, ty_Int)
new_lt9(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_esEs8(x0, x1, ty_Ordering)
new_esEs4(x0, x1, ty_Double)
new_esEs25(Right(x0), Right(x1), x2, ty_Ordering)
new_ltEs4(x0, x1, ty_Double)
new_lt21(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_esEs37(x0, x1, ty_Double)
new_ltEs16(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs4(x0, x1, ty_Char)
new_esEs36(x0, x1, ty_Integer)
new_esEs25(Right(x0), Right(x1), x2, ty_Int)
new_primCmpNat0(Zero, Zero)
new_esEs28(x0, x1, ty_Float)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, ty_Double)
new_lt9(x0, x1, ty_Int)
new_esEs25(Right(x0), Right(x1), x2, app(ty_[], x3))
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Bool)
new_esEs5(x0, x1, ty_Double)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs25(Left(x0), Left(x1), ty_Float, x2)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_lt9(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Float)
new_esEs39(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_lt10(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs16(Just(x0), Just(x1), ty_Double)
new_ltEs19(x0, x1, ty_Char)
new_ltEs6(x0, x1)
new_esEs31(x0, x1, ty_Float)
new_ltEs13(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs17(GT, LT)
new_ltEs24(x0, x1, ty_Ordering)
new_ltEs17(LT, GT)
new_primPlusNat1(Zero, Succ(x0))
new_compare27(Nothing, Just(x0), x1)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_esEs29(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Char)
new_esEs37(x0, x1, ty_Ordering)
new_ltEs23(x0, x1, ty_Double)
new_lt21(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Bool)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_esEs39(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, ty_Double)
new_esEs34(x0, x1, ty_Int)
new_esEs6(x0, x1, app(ty_[], x2))
new_esEs39(x0, x1, ty_Int)
new_compare7(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Bool)
new_esEs5(x0, x1, ty_Char)
new_compare24(x0, x1, False, x2, x3)
new_lt9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_Char)
new_primEqNat0(Zero, Succ(x0))
new_compare112(x0, x1, True, x2)
new_esEs36(x0, x1, ty_Ordering)
new_lt10(x0, x1, app(ty_Maybe, x2))
new_esEs23(Just(x0), Nothing, x1)
new_ltEs16(Just(x0), Just(x1), ty_Ordering)
new_compare13(x0, x1, True, x2, x3)
new_lt9(x0, x1, ty_@0)
new_esEs23(Just(x0), Just(x1), ty_Float)
new_ltEs20(x0, x1, ty_Double)
new_ltEs13(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs8(x0, x1, ty_Bool)
new_esEs28(x0, x1, ty_Bool)
new_ltEs19(x0, x1, ty_@0)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_ltEs13(Right(x0), Right(x1), x2, ty_Float)
new_ltEs23(x0, x1, ty_@0)
new_compare15(Double(x0, x1), Double(x2, x3))
new_compare7(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, ty_Ordering)
new_esEs33(x0, x1, ty_Int)
new_esEs6(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_lt12(x0, x1)
new_esEs23(Just(x0), Just(x1), ty_Ordering)
new_esEs6(x0, x1, ty_Int)
new_esEs39(x0, x1, ty_Float)
new_ltEs22(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Ordering)
new_lt10(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Ordering)
new_esEs29(x0, x1, app(ty_[], x2))
new_not(True)
new_lt23(x0, x1, ty_Integer)
new_ltEs14(x0, x1)
new_esEs29(x0, x1, ty_Ordering)
new_compare28(EQ, EQ)
new_ltEs13(Right(x0), Right(x1), x2, ty_Char)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, ty_Bool)
new_esEs25(Left(x0), Left(x1), ty_Double, x2)
new_esEs11(x0, x1, ty_Double)
new_ltEs4(x0, x1, ty_Char)
new_esEs32(x0, x1, ty_Double)
new_esEs36(x0, x1, ty_Double)
new_esEs39(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs39(x0, x1, ty_Ordering)
new_ltEs21(x0, x1, ty_Integer)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_compare8(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs11(x0, x1, ty_Float)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, ty_Double)
new_not(False)
new_esEs9(x0, x1, ty_@0)
new_esEs10(x0, x1, ty_Integer)
new_esEs6(x0, x1, ty_@0)
new_esEs25(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs9(x0, x1, ty_Integer)
new_esEs26(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_@0)
new_lt23(x0, x1, ty_Char)
new_lt8(x0, x1, x2)
new_esEs30(x0, x1, ty_Char)
new_esEs32(x0, x1, ty_Char)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_@0)
new_esEs4(x0, x1, ty_@0)
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_esEs8(x0, x1, ty_@0)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs28(x0, x1, ty_Integer)
new_esEs9(x0, x1, ty_Bool)
new_compare210(x0, x1, x2, x3, False, x4, x5)
new_lt20(x0, x1, app(ty_[], x2))
new_primEqNat0(Succ(x0), Succ(x1))
new_esEs36(x0, x1, ty_Bool)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_esEs4(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_primCompAux0(x0, x1, x2, x3)
new_esEs31(x0, x1, ty_@0)
new_compare28(LT, LT)
new_esEs31(x0, x1, ty_Bool)
new_compare14(False, False)
new_esEs21(@0, @0)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs38(x0, x1, ty_Float)
new_esEs35(x0, x1, ty_Ordering)
new_esEs23(Just(x0), Just(x1), ty_Double)
new_ltEs20(x0, x1, ty_Integer)
new_esEs25(Right(x0), Right(x1), x2, ty_Char)
new_esEs8(x0, x1, ty_Integer)
new_ltEs4(x0, x1, ty_Int)
new_esEs7(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_primCompAux00(x0, LT)
new_ltEs17(LT, EQ)
new_ltEs17(EQ, LT)
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_lt10(x0, x1, ty_@0)
new_ltEs20(x0, x1, ty_Float)
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_compare212(x0, x1, False, x2)
new_esEs8(x0, x1, ty_Int)
new_lt23(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, ty_Double)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs23(Just(x0), Just(x1), app(ty_Maybe, x2))
new_lt23(x0, x1, ty_Int)
new_ltEs22(x0, x1, ty_Double)
new_compare5([], [], x0)
new_esEs23(Just(x0), Just(x1), ty_Bool)
new_lt21(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_compare112(x0, x1, False, x2)
new_esEs22(True, True)
new_lt22(x0, x1, app(ty_Maybe, x2))
new_ltEs13(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs21(x0, x1, ty_Char)
new_compare6(@2(x0, x1), @2(x2, x3), x4, x5)
new_primEqInt(Pos(Zero), Pos(Zero))
new_lt21(x0, x1, ty_Bool)
new_esEs31(x0, x1, ty_Char)
new_compare27(Just(x0), Nothing, x1)
new_compare110(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_lt20(x0, x1, ty_Integer)
new_ltEs13(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs22(False, False)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_lt10(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, ty_Char)
new_esEs39(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, True, x2, x3)
new_ltEs17(EQ, EQ)
new_lt9(x0, x1, ty_Integer)
new_primCompAux00(x0, EQ)
new_esEs12(LT, LT)
new_ltEs17(LT, LT)
new_esEs7(x0, x1, ty_Float)
new_compare7(x0, x1, ty_Double)
new_esEs38(x0, x1, ty_@0)
new_ltEs4(x0, x1, ty_Bool)
new_lt23(x0, x1, ty_@0)
new_lt16(x0, x1, x2)
new_esEs33(x0, x1, ty_Bool)
new_lt9(x0, x1, ty_Ordering)
new_esEs31(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs7(False, False)
new_compare11(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, ty_Ordering)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_lt4(x0, x1, x2, x3)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs: